• 数据访问知识框架


    ADO.NET
    两个命名空间,三个类。
    一、两个命名空间:
    using System.Data;
    using System.Data.SqlClient;

    二、三个类:
    SqlConnection    SqlCommand    SqlDataReader

    (一)SqlConnection链接类
    1.构造
    链接字符串的写法:server=服务器IP或服务器名;database=数据库名;uid=用户名;pwd=密码
    server=.;database=mydb;uid=sa;pwd=123
    Data Source=.;Initial Catalog=mydb;Persist Security Info=True;User ID=sa;Password=***********

    SqlConnection conn = new SqlConnection();
    SqlConnection conn = new SqlConnection("链接字符串");

    2.属性
    ConnectionString:string,链接字符串

    3.方法
    Open()
    Close()
    CreateCommand()

    (二)SqlCommand命令类
    1.构造
    SqlCommand cmd = new SqlCommand(["Sql语句",链接对象,事务对象]);
    SqlCommand cmd = conn.CreateCommand();
    2.属性
    CommandText:string 要执行的SQL语句或存储过程的名字
    Connection:SqlConnection 指定通过哪个链接访问数据库
    Parameters:SqlParameterCollection类型 ,指定Sql文本中的变量的值。 AddWithValue("名","值")
    CommandType:CommandType枚举类型,指定CommandText中是SQL语句(Text),还是存储过程(StoredProcedure)。
    Transaction:SqlTransaction类型,执行命令时需要的事务对象
    3.方法
    ExecuteNonQuery()
    ExecuteReader()
    ExecuteScalar()

    (三)SqlDataReader读取器类
    1.构造
    注意:不能直接new出来。只有唯一的一种生成方式
    SqlDataReader dr = cmd.ExecuteReader();
    2.属性
    HasRows:bool,检查是否查出数据来了。
    3.方法
    Read():bool,读取数据,读取成功为true,否则为false
    4.语法
    while(dr.Read())
    {
        dr[索引号]
        dr["列名"]
    }


    三、事务
    (一)链接内事务
    1.造事务对象。
    2.挂到Command上
    3.提交或回滚事务
    (二)分布式事务(跨链接的事务)
    1.启动 DTC服务
    2.添加System.Transactions引用
    3.添加using System.Transactions命名空间
    4.使用TransactionScope类操作数据。



    1.造DBConnection
        做一个链接字符串的常量
    2.造实体类
        把数据库的表封装类,把表的字段都封状成成员变量和属性
    3.造数据访问类
        a.声明三个成员:SqlConnection,SqlCommand,SqlDataReader
        b.在构造函数中,把SqlConnection和SqlCommand实例化。
        c.做一系列的增、删、改、查的方法。
    4.Main函数
        (1)。
        a.调用数据访问类,获得数据。
        b.在界面上使用for显示出来。
        (2)。
        a.从界面上获得输入的数据,存在变量中。
        b.调用数据访问类,把变量传进相应的增删改的方法中去,实现数据库相应操作。

  • 相关阅读:
    Flash 终将谢幕:微软将于年底( 2020 年 )停止对 Flash 的支持
    分布式id生成方案总结
    如何设计一个亿级网关(API Gateway)?
    服务之间的调用为啥不直接用 HTTP 而用 RPC?
    Dubbo 总结:关于 Dubbo 的重要知识点
    CAP理论解读
    单点登录(SSO)的设计与实现
    入职微软三个月把老板炒了,七个月自己跑路是一种怎样的体验?
    有关链表的小技巧,我都给你总结好了
    排序算法入门之「选择排序」
  • 原文地址:https://www.cnblogs.com/lovesy2413/p/4493871.html
Copyright © 2020-2023  润新知