在另一个页面上设置我的SqlDataSource
以显示值后,在评论页面上输入两次测试值时,它们会显示为2个空白。
我认为我在SQL Server数据库值中将它们放入表中时遗漏了什么?
我不确定这里需要哪些信息,所以请通知我。
提前致谢
EDIT#1用于CODE的用户请求
protected void btnSend_Click(object sender, EventArgs e)
{
Page.Validate("vld2");
SendMail();
lblMsgSend.Visible = true;
//SQL Server Database
SqlConnection conn; //manages connection to database
SqlCommand cmd; //manages the SQL statements
string strInsert; //SQL INSERT Statement
try
{
//create a connection object
conn = new SqlConnection("Data Source=localhost\\sqlexpress;" +
"Initial Catalog=RionServer;" +
"Integrated Security=True;");
//Build the SQL INSERT Document
strInsert = "INSERT INTO CommentsAdmin (Name,Phone,Email,Comments)"
+ "VALUES(@Name,@Phone,@Email,@Comments);";
//associate the INSERT statement with the connection
cmd = new SqlCommand(strInsert, conn);
//TELL the SqlCommand WHERE to get the data from
cmd.Parameters.AddWithValue("Name", txtName.Text);
cmd.Parameters.AddWithValue("Phone", txtPhone.Text);
cmd.Parameters.AddWithValue("Email", txtEmail.Text);
cmd.Parameters.AddWithValue("Comments", txtComment.Text);
//open the connection
cmd.Connection.Open();
//run the SQL statement
cmd.ExecuteNonQuery();
//close connection
cmd.Connection.Close();
//display status message on the webpage
lblMsgSend.Text = "Thank you for the comment! Please hit the 'Return to Main Page' to return to the Main Page!";
}
catch (Exception ex)
{
lblMsgSend.Text = ex.Message;
}
txtPhone.Text = "";
txtEmail.Text = "";
txtName.Text = "";
txtComment.Text = "";
}
编辑#2
数据库中的名称,电话,电子邮件和评论的值似乎是空的,当我测试查询时,我认为它正在注册条目,只是没有将值带入SQL?
编辑#3
由于编码员和rs的建议,我已经完成了他们所说的话。现在我收到了这个错误。 “字符串或二进制数据将被截断。该语句已被终止。” 代码也已更新。
编辑#4
这个问题是对SQL Server Error, 'Keyword not supported 'datasource'的跟进。
答案 0 :(得分:1)
删除与此""
类似的所有txtPhone.Text = "";
,然后将SQL值作为服务器输入,然后输入空值。因此,即使您为文本框提供了一些值,它也会获取预定义的NULL值,并且不会输入任何一个值。