当前位置: 首页 > 面试题库 >

如何在ADO.Net面向连接模式下在SQL数据库中插入行

施兴言
2023-03-14
问题内容

我有一个数据库,其中的表具有Registration用于注册用户的名称。

它只有两列,一列是Username,一列是password

名为的页面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();
     }


    }


 类似资料:
  • 在H2文档中,它表示只有web服务器支持浏览器连接。这是否意味着我们只能在WebServer模式下通过控制台访问H2数据库,而不能通过TcpServer?但当我做以下测试时,结果完全不符合预期。 如果启动TcpServer,我可以通过以下url访问DB:jdbc:h2:tcp://localhost:9092/mem:test在控制台中。 但是当我启动WebServer时,我尝试使用jdbc: h

  • 我正在开发一个应用程序,它使用SpringDAO hibernate结构来处理数据库。 我想使用hibernate在oracle数据库中插入大量行(大约20000行),但是使用。save()非常慢。 我了解到使用无状态会话可以做到这一点,但因为所有会话都是通过BaseDaoImp类管理的,所以我不知道如何在这种设计模式中创建无状态会话。 如果有人知道如何实现这一点,请提供帮助。

  • 注意:在MySQL表中,此列的数据类型我选择了日期数据类型 我只是有问题的日期部分查询插入日期:

  • 我想发出一个将数据插入数据库的请求。该表有4列:ID_DOCUMENT(PK)、ID_TASK、DESCRIPTION、FILEPATH 当我运行我的测试时,我得到了这个错误:由:org.hibernate.hql.ast.querysyntaxException引起的:预期打开,在第1行第32列附近发现'c'[insert into TaskDocumentEntity c(c.IDTask,c

  • 我想在VB.NET2008中使用adodb连接将一个图像插入到mysql数据库中。 我正在使用一个选择查询插入数据到数据库,这里是我的代码添加或保存数据。 我想将数据库中的图像添加到字段图片中,我使用blob作为它的数据类型,我还想从数据库中检索图像并将其显示在PictureBox中...有人能帮我解决一下我的问题吗。 事先谢谢...

  • (这适用于AzureSQL数据库) 几乎每篇文章都在开始时说,在创建新数据库之前“连接到主数据库”。 我已使用SSMS 2014连接到我的Azure SQL数据库服务器,没有问题。我在系统数据库下看到了主数据库。我右键单击LHS树中的数据库(位于系统数据库上方),然后单击新建数据库。。。 模板查询注释区域会显示“…连接到主机…”这对我来说意味着我与大师没有联系。 我显然错过了一些关于基础的非常基本