C# 如何插入包含单引号或双引号的字符串

C# 如何插入包含单引号或双引号的字符串,c#,sql,sql-server-2008,C#,Sql,Sql Server 2008,如果我想插入包含引号的语句,怎么可能 例如,我有一个文本框,输入: Future Swami Vivekananda’s grand father's name was "____" . 如果你愿意,你不必担心。类似这样(尽管请不要向我学习C#技巧): (尽管您确实应该使用存储过程。) 如果您正在手动构建字符串(您真的、真的、真的不应该这样做),则需要通过将字符串分隔符加倍来转义它们: INSERT dbo.tbl(col) VALUES('hello''foo"bar'); 使用参数化查询

如果我想插入包含引号的语句,怎么可能

例如,我有一个文本框,输入:

Future Swami Vivekananda’s grand father's name was "____" .
如果你愿意,你不必担心。类似这样(尽管请不要向我学习C#技巧):

(尽管您确实应该使用存储过程。)

如果您正在手动构建字符串(您真的、真的、真的不应该这样做),则需要通过将字符串分隔符加倍来转义它们:

INSERT dbo.tbl(col) VALUES('hello''foo"bar');

使用参数化查询-然后引号根本不重要。另外-您的数据库不会被SQL注入接管-所以真的赢了。

您可以将报价加倍:

INSERT INTO table
VALUES ('Future Swami Vivekananda''s grand father''s name was "____"')

使用参数化SQL语句。它的客户端输入,那么我想如何用这种方式管理它呢?Rick-在形成insert语句之前,您应该能够用两个单引号替换用户输入中的“(单引号)。但是,实际上,您应该重构代码以使用参数化查询(正如Aaron所建议的)或使用存储过程。在SQL Server端,只有单引号(
)是一个问题。
INSERT INTO table
VALUES ('Future Swami Vivekananda''s grand father''s name was "____"')