Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách chèn chuỗi chứa dấu ngoặc kép hoặc đơn

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');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đếm số bản ghi được trả về theo nhóm bởi

  2. CHÈN SỐ LƯỢNG LỚN SQL Server từ Linux

  3. Cách cài đặt SQL Server trên Red Hat 8

  4. Ngày trả về dưới dạng ddmmyyyy trong SQL Server

  5. Cách thêm thời gian vào DateTime trong SQL