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(,) primary key, //id号,自增
- Username nvarchar(), //用户名
- [password] nvarchar(), //密码
- Nickname nvarchar(), //昵称
- Sex bit , //性别
- Birthday datetime, //生日
- Nation nvarchar(), //名族
- )
- //向表中添加数据
- insert into users values
- ('zhangsan','','张三',,'1999-1-1','N001'),
- ('lisi','','李四',,'1999-1-1','N002'),
- ('wangwu','','王五',,'1999-1-1','N003'),
- ('zhaoliu','','赵六',,'1999-1-1','N001'),
- ('tianqi','','田七',,'1999-1-1','N002')
- //民族表
- create table usernation
- (
- NationCode nvarchar() primary key,
- NationName nvarchar(),
- )
- 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();
- }
- }
- }
ADO.NET 【类库】【与数据库的连接】的更多相关文章
- php中数据库服务器连接类库文件的编写
<!--数据库服务器连接类库文件的编写--> <?php class mysql{ //连接服务器.数据库以及执行Sql语句的类库 public $database; public ...
- 第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获得连接字符串
第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获 ...
- ADO访问Oracle数据库,连接异常(Unknown error 0x800a0e7a)
ADO访问Oracle数据库,连接异常(Unknown error 0x800a0e7a) 代码如下:执行Open过程中出现异常,信息为Unknown error 0x800a0e7a C++ Co ...
- ADO.Net对Oracle数据库的操作【转载】
一 ADO.Net简介 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC).数据访问对象(DAO).远程数据对象 (RDO). ActiveX数据对象(ADO).我们今天主要要学习A ...
- 【转】ADO.Net对Oracle数据库的操作
一 ADO.Net简介 [转自网络,收藏学习] 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC). 数据访问对象(DAO).远程数据对象(RDO). ActiveX数据对象(ADO ...
- 数据库最大连接池max pool size
本文导读:Max Pool Size如果未设置则默认为100,理论最大值为32767.最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影 ...
- ADO.NET之1-数据库连接---ShinePans
ADO.NET技术主要包含Connection,Command,DataReader,DataAdapter,DateSet,DataTable等六种对象 1).Connection 对象的主要功能是 ...
- NET Framework 4.5新特性 数据库的连接加密保护。
NET Framework 4.5新特性 (一) 数据库的连接加密保护. NET Framework 4.5 ado.net数据库连接支持使用SecureString内存流方式保密文本. 一旦使用这 ...
- VC++中使用ADO方式操作ACCESS数据库
ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,即使你对OLE DB,COM不了解也能轻松对付ADO,因为 ...
- 浅谈PHP+Access数据库的连接 注意要点
今天公司需要用php连接access 数据库,结果整了半天Access数据库 就是连接不上,查找 很多资料,以下是我的经验, -.- 希望能给需要连接access 数据的人带来帮助..-.- 需要注意 ...
随机推荐
- 利用gotty在web浏览器模拟终端登录
1.随机url,9000端口访问 gotty -p " -r -w bash -i 2.简单用户名密码授权,9090端口访问 gotty -p -c user:password -w bas ...
- 关于WordCount的作业
一.开发者:201631062418 二.代码地址:https://gitee.com/YsuLIyan/WordCount 三.作业地址:https://edu.cnblogs.com/campus ...
- vue.js - 1
最近开发公司vue前端项目,做一下笔记,偶尔上来查漏补缺 Vue指令之v-bind的三种用法 直接使用指令v-bind 使用简化指令: 在绑定的时候,拼接绑定内容::title="btnTi ...
- jQuery中FormData的使用
web中数据提交事件是常常发生的,但是大多数情况下我们不希望使用html中的form表单提交,因为form表单提交会中断当前浏览器的操作并且会调到另一个地址(即使这个地址是当前页面),并且会重复加载一 ...
- UOJ#419. 【集训队作业2018】圆形(格林公式)
题面 传送门 题解 首先您得会用格林公式计算圆的面积并 这里只需要动态维护一下圆弧就可以了 时间复杂度\(O(n^2\log n)\) //minamoto #include<bits/stdc ...
- Mac下通过 brew 安装 Apache 和 PHP
Mac 自带的是php5.6 ,这里讲一下如果要升级到php7.1需要做的. 1.安装brew https://brew.sh/(官网有提供安装命令 建议使用) ruby -e "$(cur ...
- Linux Shell命令行快捷键
1. 命令行编辑 <Ctrl>+a 移动光标到行首 <Ctrl>+e ..........行尾 <Alt>+f 光标右移一个词 <Alt>+b .... ...
- Vuex 拾遗
引入Vuex的目的:为众多的Vue组件提供一个全局管理共享组件状态的控制中心,当一个共享状态改变时,能使调用该共享状态的组件得到更新.并且使用Vuex的API,每个共享状态的改变都能被追踪. 组件如何 ...
- [JavaWeb] Servlet Filter
作用: Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息. 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet.Servle ...
- python中@staticmethod与@classmethod
@ 首先这里介绍一下‘@’的作用,‘@’用作函数的修饰符,是python2.4新增的功能,修饰符必须出现在函数定义前一行,不允许和函数定义在同一行.只可以对模块或者类定义的函数进行修饰,不允许修饰一个 ...