zoukankan      html  css  js  c++  java
  • 数据库操作的九大步骤

    一、数据库连接查询数据的步骤(查询单条数据)

    1.引用 命名空间        
        using System.Data.SqlClient;
    
    2.创建 连接字符串
        1)SQL Server身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;User ID=登录名;Pwd=密码";
        2)Windows身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;Integrated Security = True";
    
    3.利用 连接字符串 创建 连接对象
        SqlConnection conn = new SqlConnection(connString);
    
    4.创建 SQL命令
        string sqlText = "";
    
    5.利用 连接对象和SQL命令 创建 命令对象
        SqlCommand comm = new SqlCommand(sqlText, conn);
    
    6.打开 数据库连接
        conn.Open();
    
    7.执行 SQL命令, 使用合适的数据类型变量接收结果(int类型居多)
        object obj = comm.ExecuteScalar();
        //int result = (int)comm.ExecuteScalar();
    
    8.处理 结果
       ……
    9.关闭 数据库连接 conn.Close();

    二、数据库连接查询数据的步骤(查询多行多列)【连接式】

    1.引用 命名空间
        using System.Data.SqlClient;
    
    2.创建 连接字符串
        1)SQL Server身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;User ID=登录名;Pwd=密码";
        2)Windows身份登录验证
        string connString  = @"Data Source=服务器名;Initial Catalog=数据库名;Integrated Security = True";
    
    3.利用 连接字符串 创建 连接对象
        SqlConnection conn = new SqlConnection(connString);
    
    4.创建 SQL命令
        string sqlText = "";
    
    5.利用 连接对象和SQL命令 创建 执行对象
        SqlCommand comm = new SqlCommand(sqlText, conn);
    
    6.打开 数据库连接
        conn.Open();
    
    7.执行 SQL命令 创建DataReader对象接收执行的结果
        SqlDataReader reader = comm.ExecuteReader();
    
    8.处理 reader中的结果
        判断reader中是否有资料:reader.HasRows
        循环处理reader中的资料:reader.Read()
        获得数据:
            reader.GetValue(下标)
            reader[下标]
            reader[列名]
    
    9.关闭 DataReader 和 数据库连接
        reader.Close();
        conn.Close();

    三、数据库连接操作数据的步骤(增删改)

    1.引用命名空间        
        using System.Data.SqlClient;
    
    2.创建 连接字符串
        1)SQL Server身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;User ID=登录名;Pwd=密码";
        2)Windows身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;Integrated Security = True";
    
    3.利用 连接字符串 创建 连接对象
        SqlConnection conn = new SqlConnection(connString);
    
    4.创建 SQL命令
        string sqlText = "";
    
    5.利用 连接对象和SQL命令 创建 执行对象
        SqlCommand comm = new SqlCommand(sqlText, conn);
    
    6.打开 数据库连接
        conn.Open();
    
    7.执行 SQL命令并接收受影响的行数
        int result = comm.ExecuteNonQuery();
    
    8.处理 结果
        ……
    
    9.关闭 数据库连接
        conn.Close();

    四、使用 DataSet 连接数据库操作数据(多行多列)【断开式】

    1.引用 命名空间
        using System.Data;
        using System.Data.SqlClient;
    
    2.创建 连接字符串
        1)SQL Server身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;User ID=登录名;Pwd=密码";
        2)Windows身份登录验证
        string connString = @"Data Source=服务器名;Initial Catalog=数据库名;Integrated Security = True";
    
    3.创建 连接对象
        SqlConnection conn = new SqlConnection(connString);
    
    4.创建 SQL命令
        string sqlText = "";
    
    5.利用 连接对象和SQL命令 创建 数据适配器
        SqlDataAdapter da = new SqlDataAdapter(sqlText, conn);
    
    6.填充 数据集
        DataSet ds = new DataSet();
        da.Fill(ds,表名);
    
    7.处理 数据集(绑定)
       ……

    上述都是 ADO.NET 方式访问数据库,很原始,现在大多用一些 ORM 框架来访问数据库,如 Entity Framework、Linq to SQL、CYQ.Data 等。

    不管是那种 ORM 框架,最终会转换成 SQL 交给 ADO.NET 执行。

    个人认为 CYQ.Data 性能比较好。

  • 相关阅读:
    MQTT的优势
    http与https与tcp区别
    中科芯CKS-MBT30数据采集网关帮助工程师实现PLC远程上下载,减少出差成本
    CKS-MAT30远程程序上下载 支持欧姆龙西门子等PLC 远程下载、监控
    西门子S7以太网通讯协议
    DK云网关与普通DTU之间的区别
    腾讯笔试题
    二叉搜索树
    哈希,链接法解决冲突
    将16进制字符串转化为10进制数输出
  • 原文地址:https://www.cnblogs.com/Allofus/p/15033965.html
Copyright © 2011-2022 走看看