Nếu bạn sử dụng câu lệnh được tham số hóa đúng cách , bạn không cần phải lo lắng về điều đó. Một cái gì đó như thế này (mặc dù vui lòng không học các kỹ thuật C # từ tôi):
string sql = @"UPDATE dbo.table SET col = @p1 WHERE ...;";
string myString = @"hello'foo""bar";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.CommandType = CommandType.Text;
SqlParameter p1 = cmd.Parameters.AddWithValue("@p1", myString);
cmd.ExecuteNonQuery();
(Mặc dù bạn thực sự nên sử dụng các thủ tục được lưu trữ.)
Nếu bạn đang xây dựng các chuỗi của mình theo cách thủ công (điều mà bạn thực sự không nên làm), bạn cần phải thoát khỏi các dấu phân cách chuỗi bằng cách nhân đôi chúng lên:
INSERT dbo.tbl(col) VALUES('hello''foo"bar');