zoukankan      html  css  js  c++  java
  • ADO.NET入门学习笔记(二)

    gridView再winform中显示数据库的数据。

    SqlDataAdapter, DataSet, DataTable的简单应用

    1,安装学习笔记一的那几步打开数据库,然后使用。

     1         SqlDataAdapter da;       //数据适配器
     2         DataSet ds = new DataSet("StuMS");  //DataSet数据集
     3         DataTable dt = new DataTable();     //数据表
     4 
     5         private void button1_Click(object sender, EventArgs e)
     6         {
     7             string sqlStr = "select * from Student";
     8             string connString = @"Data Source=DESKTOP-BO0VRVJ;Initial Catalog=StuMS;Integrated Security=True";
     9             SqlConnection conn = new SqlConnection(connString);
    10             SqlCommand cmd = new SqlCommand(sqlStr, conn);
    11 
    12             conn.Open();
    13 
    14             da = new SqlDataAdapter(cmd);  //创建数据适配器对象
    15             da.Fill(ds, "StuMS");      //将查询结果传入数据集
    16             dt = ds.Tables["StuMS"];
    17 
    18             conn.Close();
    19 
    20             dgv.DataSource = dt; //dgv是dataGridView控件
    21             dgv.ReadOnly = true;
    22 
    23         }

     对于数据表中的数据可以用.Rows[行][列]访问(查)

     1             for (int i = 0; i < dt.Rows.Count; i++)
     2             {
     3                 if (newName == dt.Rows[i][1].ToString().Trim())
     4                 {
     5                     MessageBox.Show("用户名已存在!");
     6                     textBox1.Clear();
     7                     textBox1.Focus();
     8                     return;
     9                 }
    10             }

    再dataTables中添加一行(增)

    1                DataRow dtR = dt.NewRow();  //创建新的一行
    2                dtR["用户名"] = newName;
    3                dtR["密码"] = "000000";
    4                dtR["用户类型"] = comboBox1.SelectedIndex == 0 ? 2 : 1;
    5                dtR["状态"] = 1;
    6                dtR["姓名"] = textBox2.Text;
    7                dt.Rows.Add(dtR);   //将新的这行添加到表里

    最后dataTables中的数据只是改在内存中的,可以在窗口关闭是检查如果数据更新写到数据库中

    1         private void Frm_Admin_Manage2_FormClosing(object sender, FormClosingEventArgs e)
    2         {
    3             SqlCommandBuilder cmdBld = new SqlCommandBuilder(da);
    4             if (ds.HasChanges())
    5             {
    6                 da.Update(ds, "Admins");
    7             }
    8         }
  • 相关阅读:
    Docker批量操作相关命令
    Jenkins上HTML报告不显示jmeter脚本执行失败结果
    ubantu18.04虚机不能远程登录
    CentOS7安装MongoDB-4.0
    CentOS7安装ElasticSearch-6.4.1
    极速安装Docker-Compose
    jenkins服务启动正常但是无法访问
    Docker中部署Jenkins
    鼠标右键失灵的解决方法
    Win10系统Edge浏览器怎么截取网页长图?
  • 原文地址:https://www.cnblogs.com/Q1143316492/p/9033906.html
Copyright © 2011-2022 走看看