从文本框插入到SQL的问题

时间:2010-11-27 20:12:25

标签: c# asp.net sql visual-studio-2010

这是我的代码

SqlCommand insert_user = new SqlCommand("insert into dbo.users (username,password,firstname,lastname,address,country,city,phonenumber,gender,email) VALUES (' bader','123','beno','venp','33','pal','d',''1234','male'," + @TextBox3.Text + ");", badersql);

我正在尝试从textbox3.text插入我的sql电子邮件列,问题是当我尝试这个时,这个错误消息在debuging弹出窗口“错误9名称'TextBox3'不存在于目前的背景“。

我尝试'+ + TextBox3.text +“'与@和没有,同样的问题

如果有帮助,这是我的所有代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data.Sql;

public partial class Default4 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {


        SqlConnection badersql = new SqlConnection("Data Source=BADER-VAIO\\SQLEXPRESS;Initial Catalog=webage;Persist Security Info=True;User ID=sa;Password=123");

        badersql.Open();
        SqlCommand insert_user = new SqlCommand("insert into dbo.users (username,password,firstname,lastname,address,country,city,phonenumber,gender,email) VALUES (' bader','123','beno','venp','33','pal','d',''1234','male'," + @TextBox3.Text + ");", badersql);

        insert_user.ExecuteNonQuery();
        //insert into webpage.dbo.users (username,password,firstname,lastname,address,country,city,phonenumber,gender,email) VALUES (' bader','123','beno','venp','33','pal','d',''1234','male','pal@pal.com');
        badersql.Close();


    }


    protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
    {


    }
}

有什么建议吗?

的问候,

3 个答案:

答案 0 :(得分:2)

您的.aspx页面上没有ID TextBox3的服务器端控件。您是重命名还是删除它?

顺便说一下 - 这对SQL Injection attacks很开放 - 您应该使用parameterized queries而不是字符串连接。

答案 1 :(得分:0)

这是您的问题或代码中的拼写错误吗? ''1234'?

答案 2 :(得分:0)

它有效,我试图调试.cs页面本身,这就是弹出错误的原因,感谢大家的帮助