SQL Server :插入带有转义字符的文本,然后以相同的格式读取它

本文关键字:然后 读取 格式 文本 Server 插入 转义字符 SQL | 更新日期: 2023-09-27 18:35:46

我有一个从用户那里获取字符串的ASP网页。这些字符串通常是复杂的 SQL 查询或代码片段,因此我需要使用'、''r等字符将它们插入数据库。然后以相同的格式读取它,因此其他用户所要做的就是复制代码并运行它。

问题是,当插入数据库时,它们被切断了。我正在使用SQL Server,这是我插入数据库的代码:

OdbcConnection conn = new OdbcConnection();
StringBuilder query = new StringBuilder();
OdbcCommand command = new OdbcCommand();
string db= null;
db = connectionstr;
conn.ConnectionString = veritabani;
conn.Open();
db = null;
string detail = this.txtdetail.Text;
command = conn.CreateCommand();
if (string.IsNullOrEmpty(hdnFilename.Value))
{
    query.Append(" INSERT INTO SUPPORT (title, detail, date) VALUES (?,?,?) ");
    command.CommandText = query.ToString();
    command.Parameters.Add("@title", OdbcType.VarChar).Value = this.txtbaslik.Text;
    command.Parameters.Add("@detail", OdbcType.NVarChar).Value = detail;
    command.Parameters.Add("@date", OdbcType.DateTime).Value = DateTime.Now.ToString();
}
else
{
    query.Append(" INSERT INTO SUPPORT (baslik, detail, date, file) VALUES (?,?,?,?) ");
    command.CommandText = query.ToString();
    command.Parameters.Add("@title", OdbcType.VarChar).Value = this.txtbaslik.Text;
    command.Parameters.Add("@detail", OdbcType.NVarChar).Value = detail;
    command.Parameters.Add("@date", OdbcType.DateTime).Value = DateTime.Now.ToString();
    command.Parameters.Add("@file", OdbcType.VarChar).Value = hdnFilename.Value;
}
command.ExecuteNonQuery();
command = null;
conn.Close();
conn = null;

代码工作正常并插入数据库,必须翻译一些变量才能给你们一个更好的主意,原始没有语法错误。

SQL Server :插入带有转义字符的文本,然后以相同的格式读取它

问题是,sql 语句中有注释行,所以如果我复制粘贴查询,它将不起作用。删除它们有所帮助,我将把这个问题留给后代。谢谢你的回答。

相关文章: