zoukankan      html  css  js  c++  java
  • C# ADO.NET 连接数据库常用到的类及基本操作格式

    一、ADO.NET是什么,有什么用

      数据库访问技术

      ado.net可让开发人员以一致的方式存取资料来源,

      资料共用的消费者应用程序可使用ado.net 来连接至这些资料来源,并且撷取、处理及更新其中所含的资料。

    二、链接数据库常用的类

    Connection 

                               —— 数据库连接类,和数据库交互,必须连接它。

      连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。

      Connection对象会被Command对象使用,这样就能够知道是在哪个数据源上面执行命令。

    Command                                                             

                       —— 数据库操作类, Command对象使用Connection对象来指出与哪个数据源进行连接      

       成功与数据建立连接后,就可以用Command对象来执行查询、修改、插入、删除等命令;

      Command对象常用的方法有ExecuteReader()方法、ExecuteScalar()方法和ExecuteNonQuery()方法;

      插入数据可用 ExecuteNonQuery()方法来执行插入命令。

    DataReader 

       ——读取一串数据。

      DataReader对象允许开发人员获得从Command对象的SELECT语句得到的结果。

      从DataReader返回的数据都是快速的且只是“向前”的数据流。

    DataSet 对象

      ——数据在内存中的表示形式。

      DataSet是在特定的场景下使用――帮助管理内存中的数据并支持对数据的断开操作的。

    DataAdapter 

       某些时候开发人员使用的数据主要是只读的,并且开发人员很少需要将其改变至底层的数据源。

      同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。

      DataAdapter通过断开模型来帮助开发人员方便的完成对以上情况的处理。

    DataTable 

      DataTable 是一个数据网格控件。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数据库。它具有微软风格的用户界面。

    三、连接数据库及基本操作格式

    添加引用命名空间
    连接字符串(定位数据库)
    建立数据库连接( new 一个 connection 连接对象)
    设置命令对象( Command对象使用Connection对象来指出与哪个数据源进行连接)
    设置操作命令
    打开数据库
    执行操作命令
    关闭数据库      //数据库只有一条对外连接通道,执行完命令一定要关上

     例

    //新建库 Data0216_5
    create database Data0216_5
    //用户表                                      
    create table users       
    (
     Ids int identity(1,1) primary key,  //id号,自增
     Username nvarchar(200),        //用户名
     [password] nvarchar(200),       //密码
     Nickname nvarchar(200),       //昵称
     Sex bit ,                                //性别
     Birthday datetime,                  //生日
     Nation nvarchar(200),             //名族
    )
    
    //向表中添加数据
    insert into users values
    ('zhangsan','123','张三',1,'1999-1-1','N001'),
    ('lisi','123','李四',0,'1999-1-1','N002'),
    ('wangwu','123','王五',1,'1999-1-1','N003'),
    ('zhaoliu','123','赵六',0,'1999-1-1','N001'),
    ('tianqi','123','田七',1,'1999-1-1','N002')
    //民族表
    create table usernation 
    (
     NationCode nvarchar(200) primary key,
     NationName nvarchar(200),
    ) 
    insert into usernation values
    ('N001','汉族'),
    ('N002','壮族'),
    ('N003','满族'),
    ('N004','回族'),
    ('N005','苗族'),
    ('N006','维吾尔族'),
    ('N007','蒙古族')
    //建立外键关系
    alter table users add constraint a_b
     foreign key (Nation) references usernation(NationCode)
    数据库中建表语句

     连接数据库对新建表进行、增、删、改

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;  //添加命名空间
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                //连接字符串
                string sql ="server=.;database=Data0216;user=sa;pwd=123;";
                //数据库连接类
                SqlConnection conn = new SqlConnection(sql);
                //数据库操作类
                SqlCommand cmd = conn.CreateCommand();
                //cmd.CommandText = "insert into Users values('zhaoliu','1234','赵六',1,'2004-4-4','N001');"; ////cmd.CommandText = "update Users set NickName = '小六子' where username = 'zhaoliu'";  //
                cmd.CommandText = "delete from Users where username='zhaoliu'";//
                conn.Open();         //打开数据库连接 
                cmd.ExecuteNonQuery();  //执行操作 
                conn.Close();        //关闭数据库连接 
                Console.ReadLine();
            }
        }
    }
  • 相关阅读:
    idea 的maven窗口中dependencies有红线
    因SpringBootApplication指定scanBasePackages后,出现问题
    You have an error in your SQL syntax
    如何在Interceptor中使用@Autowired
    idea如何修改默认的${user}值
    idea如何创建类和接口时,自动添加类注释或接口注释?
    安装postman时报错
    https网站如何访问http接口
    Docker启动tomcat容器后访问404
    Python中and_Or
  • 原文地址:https://www.cnblogs.com/Tanghongchang/p/6733950.html
Copyright © 2011-2022 走看看