我有一个数据库,其中的表具有Registration用于注册用户的名称。
Registration
它只有两列,一列是Username,一列是password。
Username
password
名为的页面Register.aspx用于注册成员,该成员有两个文本框,一个用于获取Username(textbox1),一个用于获取,password(textbox2)以及一个用于将这些值插入数据库的按钮。
Register.aspx
Username(textbox1)
password(textbox2)
主要的问题是我们不能这样写语句:
Insert into Registration (Username, password) values ('TextBox1.text','TextBox2.text')
我正在使用ADO.net面向连接的模式,我用google搜索了一下,但是没有找到在连接模式下在SQL数据库中插入行的任何方法。请为我提供插入此行的想法?
ADO.NET具有支持连接模式的DataReader。所有其他都断开连接。
DataReader是连接的体系结构,因为它保持连接打开,直到获取所有记录
如果要插入ADO.NET,则应执行以下步骤:
private void btnadd_Click(object sender, EventArgs e) { try { //create object of Connection Class.................. SqlConnection con = new SqlConnection(); // Set Connection String property of Connection object.................. con.ConnectionString = "Data Source=KUSH-PC;Initial Catalog=test;Integrated Security=True"; // Open Connection.................. con.Open(); //Create object of Command Class................ SqlCommand cmd = new SqlCommand(); //set Connection Property of Command object............. cmd.Connection = con; //Set Command type of command object //1.StoredProcedure //2.TableDirect //3.Text (By Default) cmd.CommandType = CommandType.Text; //Set Command text Property of command object......... cmd.CommandText = "Insert into Registration (Username, password) values ('@user','@pass')"; //Assign values as `parameter`. It avoids `SQL Injection` cmd.Parameters.AddWithValue("user", TextBox1.text); cmd.Parameters.AddWithValue("pass", TextBox2.text); Execute command by calling following method................ 1.ExecuteNonQuery() This is used for insert,delete,update command........... 2.ExecuteScalar() This returns a single value .........(used only for select command) 3.ExecuteReader() Return one or more than one record. cmd.ExecuteNonQuery(); con.Close(); MessageBox.Show("Data Saved"); } catch (Exception ex) { MessageBox.Show(ex.Message); con.Close(); } }