使用C#ADO.NET将多行字符串写入SQL Server?
我正在尝试将多行文本写入SQL server数据库。每一行都以“\r\n”结尾,但文本保存在SQL Server中,没有换行符,因此当我从SQL Server management studio复制列值时,它只是一句话 没有换行符的“lineone line2 line3” 为什么要删除换行符?使用C#ADO.NET将多行字符串写入SQL Server?,c#,sql-server,ado.net,C#,Sql Server,Ado.net,我正在尝试将多行文本写入SQL server数据库。每一行都以“\r\n”结尾,但文本保存在SQL Server中,没有换行符,因此当我从SQL Server management studio复制列值时,它只是一句话 没有换行符的“lineone line2 line3” 为什么要删除换行符? string cnnString = null; Sqlcnn cnn ; SqlCommand cmd ; string sql = null; cnnString
string cnnString = null;
Sqlcnn cnn ;
SqlCommand cmd ;
string sql = null;
cnnString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password";
sql = "INSERT INTO tbl_AnswerSelected (AnswerValue) VALUES (@AnswerValue) ";
cnn = new Sqlcnn(cnnString);
try
{
cnn.Open();
using (var sqlCommand = cnn.CreateCommand())
{
sqlCommand.CommandText = sql;
command.Parameters.Add("@AnswerValue", SqlDbType.String);
command.Parameters["@AnswerValue"].Value = "lineone\r\nline2\r\nline3\r\n";
return sqlCommand.ExecuteNonQuery();
}
}
谢谢你的评论。问题似乎出现在SQL management studio中,因为如果我从SQL management studio复制列值,行尾将不会显示。我编写了一个c#应用程序从SQL数据库中读取记录,字符串包括行尾字符 您是试图在SQL Studio中查看它还是实际检索这些值?SSMS将网格输出中的换行符替换为空格。当您说“当我从SQL复制字符串时”时,不清楚您的意思。请确保选中了选项
Retain CR/LF on copy或save
,否则,正如您所看到的,它们将被替换,现在当您复制时,您应该获得回车符/换行符/