0

在另一个页面上设置我SqlDataSource的值以显示这些值后,我在评论页面上输入了 2 次测试值,它们显示为 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

由于 coder 和 rs 的建议,我已经按照他们所说的做了。现在我得到了这个错误。“字符串或二进制数据将被截断。语句已终止。” 代码也已更新。

编辑#4

这个问题是SQL Server Error, 'Keyword not supported 'datasource'的后续问题。

4

1 回答 1

1

在将值输入到 SQL 作为服务器之前删除所有与""此类似的内容,txtPhone.Text = "";您正在输入空值。因此,即使您为文本框提供了一些值,它也会采用预定义的 NULL 值,并且不会输入其中任何一个值。

于 2013-02-18T03:58:26.360 回答