zoukankan      html  css  js  c++  java
  • ADO.NET第一课.NET Framework 数据提供程序

    .NET Framework 数据提供程序:命名空间System.Data.Sqlclient.下面的着重来看他下面的几大类。

     1。SqlConnection类,SQL Server 数据库的一个打开的连接。

      构造函数有:

    名称 说明
    SqlConnection () 初始化 SqlConnection 类的新实例。

    由 .NET Compact Framework 支持。

    SqlConnection (String) 如果给定包含连接字符串的字符串,则初始化 SqlConnection 类的新实例。

    由 .NET Compact Framework 支持。

    一个带参的,直接在构造函数里面就给出连接的字符串,一个不带参的,通过Conn.ConnectionString属性来指定连接的字符串.

    字符串构造例如:Conn.ConnectionString="server=.;uid=sa;pwd=110;database=student",server:服务器,Uid,SQL Server 登录帐户,pwd,SQL Server 帐户登录的密码,database,数据库的名称。

    最后就是Conn.Open()方法来连接数据库了。连接数据库后,就可以对数据库进行增,删,改的操作了。

    完整实例:

    using(SqlConnection conn=new SqlConnection)
    {
    conn.ConnectionString
    ="server=.;uid=sa;pwd=506;database=student";
    conn.Open();
    }

    2.SqlCommand 类:表示要对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程。

    构造函数有:

    名称 说明
    SqlCommand () 初始化 SqlCommand 类的新实例。

    由 .NET Compact Framework 支持。

    SqlCommand (String) 用查询文本初始化 SqlCommand 类的新实例。

    由 .NET Compact Framework 支持。

    SqlCommand (String, SqlConnection) 初始化具有查询文本和 SqlConnectionSqlCommand 类的新实例。

    由 .NET Compact Framework 支持。

    SqlCommand (String, SqlConnection, SqlTransaction) 使用查询文本、一个 SqlConnection 以及 SqlTransaction 来初始化 SqlCommand 类的新实例。

    由 .NET Compact Framework 支持。

    ExecuteReader

    执行返回行的命令。为了提高性能,ExecuteReader 使用 Transact-SQL sp_executesql 系统存储过程调用命令。因此,如果 ExecuteReader 用于执行命令(例如 Transact-SQL SET 语句),则它可能不会产生预期的效果。

    ExecuteNonQuery

    执行 Transact-SQL INSERT、DELETE、UPDATE 及 SET 语句等命令。

    ExecuteScalar

    从数据库中检索单个值(例如一个聚合值)。

    ExecuteXmlReader

    CommandText 发送到 Connection 并生成一个 XmlReader 对象。

      

    完整实例:

     SqlDataReader类,提供一种从 SQL Server 数据库读取行的只进流的方式。

    代码
    using(SqlConnection conn=new SqlConnection){
    conn.ConnectionString
    ="server=.;uid=sa;pwd=506;database=student";
    conn.Open();
    StringBuilder sql
    =new StringBuilder();
    sql.Append(
    "select name,sex,age,address from student");
    SqlCommand cmd
    =new SqlCommand(sql.ToString(),conn);
    SqlDataReader reader=cmd.ExecuteReader();
    while(reader.Read())
    {
        ListViewItem lsv = this.listView1.Items.Add(reader[0].ToString());
                    lsv.SubItems.Add(reader[1].ToString());
                    lsv.SubItems.Add(reader[2].ToString());
                    lsv.SubItems.Add(reader[3].ToString());
    }
    }

    3.当Sqlcommand中带参数时,应该调用cmd.Parameters.add带对参数指定类型和值。

    sql.append("select name,sex,age,address from student where ");

    sql.append("name=@name");

    SqlCommand cmd=new SqlCommand(sql.ToString(),conn);
    cmd.Parameters.add("@name",SqlDBType.varchar).Value=this.textbox1.text;

    4.添加的时候就是引用sql.append("insert student values(@name,@sex,@age,@address)");

    再用cmd.parameters.add()指定类型和值。

    5。在修改的时候,用到了前面学得一个窗体之间传值的知识,你可以写一个类,成员就是你要修改的那个值,但是这种方法修改的时候麻烦,所以采用窗体直接把LISTVIEW传过来。

    Form2 fr2=new Form2(this.Listview1);

    在Form2中的构造函数里面肯定要接受这个Listview了.

    在Form2中就像操作本窗体下面的Listview一样了.

     

     

     

  • 相关阅读:
    k8s 组件介绍-kube-controller-manager
    k8s 组件介绍-API Server
    ELK+filebeat+redis 日志分析平台
    Logstash配置文件详情
    Logstash,Fluentd, Logtail对比伤害
    公司redis
    Linux之网络ping(unknown host)故障及yum no more mirrors to try
    Linux思维导图之计划任务
    Linux思维导图之进程管理
    Linux思维导图之网络管理
  • 原文地址:https://www.cnblogs.com/netlove/p/1787606.html
Copyright © 2011-2022 走看看