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 数据的人带来帮助..-.- 需要注意 ...
随机推荐
- bower 安装后 jade 引用404问题
这个问题困扰我接近2小时,这是我在stackoveflow 上面挖到的 原文地址:http://stackoverflow.com/questions/21821773/configure-node- ...
- 如何在Notepad ++中每两行合并
\n 新行 \r 行首 [^\n]+ 是排除\n外的任意字符 [^\r]+ 是排除\r外的任意字符 用[^\n]或[^\r]都不行..老是匹配到空的东西..原来是这么一回事..用[^\n\r]+就行了 ...
- CE修改器使用教程 [基础篇]
Cheat Engine 是一款内存修改编辑工具 ,它允许你修改你的游戏或软件内存数据,以得到一些其他功能.它包括16进制编辑,反汇编程序,内存查找工具.与同类修改工具相比,它具有强大的反汇编功能, ...
- UOJ#419. 【集训队作业2018】圆形(格林公式)
题面 传送门 题解 首先您得会用格林公式计算圆的面积并 这里只需要动态维护一下圆弧就可以了 时间复杂度\(O(n^2\log n)\) //minamoto #include<bits/stdc ...
- LOJ#3048. 「十二省联考 2019」异或粽子(trie树+堆)
题面 传送门 题解 我们先把它给前缀异或和一下,然后就是要求前\(k\)大的\(a_i\oplus a_j\).把\(k\)乘上个\(2\),变成前\(2k\)大的\(a_i\oplus a_j\), ...
- 设计模式《JAVA与模式》之状态模式
在阎宏博士的<JAVA与模式>一书中开头是这样描述状态(State)模式的: 状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为 ...
- iOS开发笔记-图标和图片大小官方最新标准
这两天开发iOS app用到了Tab bar,然后随便切了点图标放上去发现效果极差.于是乎,开始查找苹果官方给的标准.搜索一番后,看到了一篇博文,但其内容与iOS人机交互指南最新版内容不符. 故此,在 ...
- Nodejs的模块系统
global对象 浏览器端JavaScript中的全局对象为"window",在浏览器中定义的变量都会成为"window"对象的属性. 不像浏览器端JavaSc ...
- 【2019北京集训2】duck 线段树优化建图+tarjan
题目大意:给你$n$个点,第$i$个点有点权$v_i$.你需要将这$n$个点排成一排,第$i$个点的点权能被累加当且仅当这个点前面存在编号在$[l_i,r_i]$中的点,问你这些点应该如何排列,点权和 ...
- odoo开发环境搭建(二):安装Ubuntu 17虚拟机
odoo开发环境搭建(二):安装Ubuntu 17虚拟机 下载镜像文件: 配置网络: 安装vmware tools: 配置共享文件夹: 选中虚拟机,右键编辑设置里边配置共享文件夹,指定windows本 ...