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 数据的人带来帮助..-.- 需要注意 ...
随机推荐
- 等到花儿也谢了的await
async/task/await三组合是.NET Framework 4.5带给.NET开发者的大礼,合理地使用它,可以提高应用程序的吞吐能力. 但是它的使用有点绕人,如果不正确使用,会带来意想不到的 ...
- lost+found目录有啥用?
Linux系统中根目录下或者新挂载的磁盘目录下有一个叫lost+found,它的作用是什么? 如果你运行fsck命令(文件系统检查和修复命令),它也许会找到一些数据碎片,这些文件碎片在硬盘中并没有引用 ...
- spring cloud学习(一) 服务注册
首先spring-cloud相关的简介可以去百度搜索,这里就不多说了,这里分享一个翻译spring cloud官网的中文网站spring cloud中文网 这个学习项目的代码放在 https://gi ...
- git如何忽略已经加入版本控制的文件
git移除已经追踪的文件 有时候新增一个文件,会自动追加到git的版本控制当中,但是又不想提交到仓库.可以按照下面的步骤: git status 查看管理状态: ml-py git:(master) ...
- 纯css实现打字效果
概述 很早以前就在别人的博客上面看到打字动画了,觉得非常炫酷,以为是用js做的,找了半天也没找到js在哪里.今天看<css揭秘>,碰巧看到书上打字动画的实现了,而且是纯css实现的!我参考 ...
- iOS开发-实现相机app的方法[转载自官方]
This brief code example to illustrates how you can capture video and convert the frames you get to U ...
- vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件
vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件/库 一提到移动端的下拉刷新上拉翻页,你可能就会想到iScroll插件,没错iScroll是一个高性能,资源 ...
- Vue2.5开发去哪儿网App 第二章笔记
Vue完成 TodoList 1.默认方式 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- ES代码总结2
本文部分转载于: http://www.cnblogs.com/luxiaoxun/p/4869509.html ElasticSearch的基本用法与集群搭建 一.简介 ElasticSearch ...
- C# 多线程学习系列四之ThreadPool取消、超时子线程操作以及ManualResetEvent和AutoResetEvent信号量的使用
1.简介 虽然ThreadPool.Thread能开启子线程将一些任务交给子线程去承担,但是很多时候,因为某种原因,比如子线程发生异常.或者子线程的业务逻辑不符合我们的预期,那么这个时候我们必须关闭它 ...