zoukankan      html  css  js  c++  java
  • ADO.NET


    ADO.NET常用的核心对象:

    Connection:建立与数据库的连接。
    SqlConnection conn(连接对象名) = new SqlConnection(连接字符串);

    Command:对数据源执行命令(负责执行Sql语句)。
    SqlCommand 命令对象名 = new SqlCommand(sql语句,Connection对象);
    命令对象名.ExecuteNonQuery();多条数据()
    命令对象.ExecuteScalar(); 一条数据

    DataReader:从数据源中读取数据流(读取数据)。
    SqlDataReader 读取器对象名 = 命令对象.command.ExecuteReader();
    while(读取器对象名.Read())
    {
    读取多条。
    }

    DataAdapter:用于填充或更新数据。
    SqlDataAdapter SqlDataAdapter对象名 = new SqlDataAdapter(SQL命令,数据库连接对象);
    SqlDataAdapter对象名.Fill(数据集对象,需要添加表的名称);
    SqlCommandBuilder SqlCommandBuilder对象 = new SqlCommandBuilder(SqlDataAdapter对象);
    SqlDataAdapter对象.Update(数据集对象,需要提交的数据表的名称);
    DataSet , "QQ"


    DateSet:相当于临时数据库,存放在客户端内存中。
    DataSet DataSet对象 = new DataSet(数据集对象);
    DataSet对象.Tables[表索引或表名].Rows[行索引][列索引或列名];

    DataGridView对象.DataSourrce = DataSet对象.Table[数据表名称或表索引];
    属性

    读取多个数据操作:
    创建Connection对象并打开连接。
    创建Command对象。
    执行相应命令,获取DataReader对象。
    使用DataReader对象读取数。( ExecuteReader()方法,执行sql语句 )
    关闭DataReader对象。
    关闭数据库连接。


    如何建立与数据库的连接:
    1.设置连接字符串
    (1)SqlServer登录:
    server=服务器名;database=数据库名;uid=用户名;pwd=密码
    (2)Windows登录:
    server=服务器名;database=数据库名;Integrated Security=true
    2.创建连接对象
    SqlConnection conn(连接对象名) = new SqlConnection(连接字符串);
    3.打开连接
    连接对象名.Open();
    4.关闭连接
    连接对象名.Close();

    题目说明:有表userinfo(id,loginName,loginPwd,sex,age)共5列,其中id是自动增长的

    1)添加一条记录

    //1.创建链接对象,并打开链接
    if(DBHelper.sqlConn.State==ConnectionState.Closed)
    DBHelper.sqlConn.Open();
    //2.定义要执行的SQL语句
    String name = txtName.Text;
    String pwd = txtPwd.Text;
    String sex = txtSex.Text;
    int age = int.Parse(txtAge.Text);
    String sql = String.Format("insert into userinfo values('{0}','{1}','{2}',{3})",name,pwd,sex,age);
    //3.创建Command命令对象
    SqlCommand sqlCmd = new SqlCommand(sql,DBHelper.sqlConn);
    //4.调用Command对象的ExecuteNonQuery()方法执行Sql语句
    int rows=sqlCmd.ExecuteNonQuery();
    if (rows > 0)
    {
    MessageBox.Show("添加成功!");
    }
    //5.关闭连接
    DBHelper.sqlConn.Close();

    2)将userinfo表的全部记录显示在ListView中
    //1.创建链接对象,并打开链接
    if (DBHelper.sqlConn.State == ConnectionState.Closed)
    DBHelper.sqlConn.Open();
    //2.定义要执行的SQL语句
    String sql = "select * from userinfo";
    //3.创建Command命令对象
    SqlCommand sqlCmd = new SqlCommand(sql, DBHelper.sqlConn);
    //4.调用Command对象的ExecuteReader()方法执行Sql语句,并用DataReader对象装载查询的结果集
    SqlDataReader sqlReader = sqlCmd.ExecuteReader();
    //5.从DataReader读取数据
    while (sqlReader.Read())
    {
    ListViewItem item = new ListViewItem();
    item.SubItems[0].Text = sqlReader[0].ToString();
    item.SubItems.Add(sqlReader[1].ToString());
    item.SubItems.Add(sqlReader[2].ToString());
    item.SubItems.Add(sqlReader[3].ToString());

    this.listView1.Items.Add(item);
    }
    sqlReader.Close();
    //6.关闭连接
    DBHelper.sqlConn.Close();

    3)使用DataSet和SqlDataAdapter查询userinfo表中全部的数据,并显示在DataGridView1控件中
    //(1)创建链接(DBHelper)
    //(2)创建要执行的sql语句
    String sql = "select * from userinfo";
    //(3)创建DataSet对象
    DataSet ds1 = new DataSet();
    //(4)创建适配器对象
    sqlApt = new SqlDataAdapter(sql,DBHelper.sqlConn);
    //(5)填充数据集 注意:此处的uinfo名称可以任意设置,但是要前后一致
    sqlApt.Fill(ds1,"uinfo");
    //(6)设置dataGridView1的数据源(实现数据绑定)
    this.dataGridView1.DataSource = ds1.Tables["uinfo"];

    4)使用DataSet和SqlDataAdapter、DataGridView实现更新
    //(1)创建SqlCommandBuilder对象:负责产生对应的sql语句
    SqlCommandBuilder sqlBuilder = new SqlCommandBuilder(sqlApt);
    //(2)调用update()
    sqlApt.Update(ds1, "uinfo");
    //(3)提示成功!
    MessageBox.Show("update is success!");

    1.ADO.NET组成
    1).Net数据提供程序
    xxConnection:连接数据库对象
    xxCommand:执行数据库操作命令
    xxDataReader:只进,只读,快速读取数据
    xxDataAdapter:负责数据库与DataSet直接的交互
    2)数据集(DataSet)
    数据表,数据行,数据列,约束
    2.执行增删改查操作
    1)增加数据
    (1)连接数据库
    SqlConnection conn=new SqlConnection(连接字符串);
    (2)创建Command对象
    SqlCommand cmd=new SqlCommand(Sql语句,连接对象(conn));
    (3)打开连接数据对象
    conn.Open();
    (4)执行增加数据的Sql语句
    cmd.ExecuteNonQuery();
    (5)关闭连接对象
    conn.Close();
    2)修改数据
    (1)连接数据库
    SqlConnection conn=new SqlConnection(连接字符串);
    (2)创建Command对象
    SqlCommand cmd=new SqlCommand(Sql语句,连接对象(conn));
    (3)打开连接数据对象
    conn.Open();
    (4)执行修改数据的Sql语句
    cmd.ExecuteNonQuery();
    (5)关闭连接对象
    conn.Close();
    3)删除数据
    (1)连接数据库
    SqlConnection conn=new SqlConnection(连接字符串);
    (2)创建Command对象
    SqlCommand cmd=new SqlCommand(Sql语句,连接对象(conn));
    (3)打开连接数据对象
    conn.Open();
    (4)执行删除数据的Sql语句
    cmd.ExecuteNonQuery();
    (5)关闭连接对象
    conn.Close();
    4)查询数据
    (a)使用DataReader
    (1)连接数据库
    SqlConnection conn=new SqlConnection(连接字符串);
    (2)创建Command对象
    SqlCommand cmd=new SqlCommand(Sql语句,连接对象(conn));
    (3)打开连接数据库对象
    conn.Open();
    (4)执行查询的Sql语句
    SqlDataReader reader=cmd.ExecuteReader();
    while(reader.read()){
    //方法一
    Convert.ToInt32(reader["列名"])
    //方法二
    reader.GetInt(0);
    }
    (5)关闭连接对象
    conn.Close();
    b)使用DataAdapter
    (1)连接数据库
    SqlConnection conn=new SqlConnection(连接字符串);
    (2)创建DataSet对象
    DataSet ds=new DataSet();
    (3)执行查询的Sql语句
    SqlDataAdapter sda=new SqlDataAdapter(Sql语句,conn);
    (4)填充数据集
    sda.Fill(ds,"数据表名");
    3.三层搭建
    1)创建空白解决方案 2)创建表示层项目(Window窗体程序,Web应用程序)
    3)创建业务逻辑层项目(类库)
    4)创建数据访问层项目(类库)
    5)创建业务实体层项目(类库)
    6)建立各层之间的依赖关系

  • 相关阅读:
    车辆年检、强险、车船税的关系
    .Net下几种ORM
    Windows 刷新图标命令
    VUE-CLI + AntV G6 兼容IE11
    CentOS 7 下安装 JIRA 8.7 和 Confluence 7.3
    .Net Core,VUE,VS Code,Sql Sugar,Element UI学习笔记
    Nginx 缓存代理
    java对象锁和类锁
    线程的生命周期
    数据库分库分表
  • 原文地址:https://www.cnblogs.com/shanzzs/p/3592420.html
Copyright © 2011-2022 走看看