ADO.NET 对象
(一)OleDbConnection 使用COM组件链接
(二)ADO.NET 对对数据库访问做了优化:
1、SqlConnection 用于建立和Sql Server服务器连接的类,表示打开数据库
2、DataSet 表示一组数据表,以及这些表之间的关系
3、DataRow 表示数据表中的一行数据
4、DataColumn 表示数据表的一列
5、DataRelation 表示数据集中的两个表之间的连接关系,通常使用主表的主键和从表的外键定义主从表之间的关系
6、SqlCommand 执行Sql语句或则数据库存储过程的调用
7、SqlDataAdapter 用于填充数据集合或者跟新数据库,也可用于存储Sql语句
8、SqlDataReader 只读并且只向前的数据读取器,并且拥有最高的读取速度
9、SqlParameter 为存储过程指定参数
10、SqlTransaction 表示在一个数据库连接中执行的数据库事务处理
SqlServer链接字符串:string sql = "Server=(local);User Id=sa;pwd=;DataBase=pubs";
备注:Server表示要链接的SqlServer实例的名称或者网络地址;User id表示用户名;Pwd表示 密码;DataBase 表示链接的数据库;
实例1、利用ADO.NET对象录入数据:SqlConnection sqlCon= new SqlConnection(连接字符串);
SqlCommand cmd = new SqlCommand(“Insert into 员工 表”+"Values(@UserId,@UserName,@UserBasicSalary,@WorkLevel)",sqlCon);
cmd.Parameters.Add(@UserId,SqlDataType.Varchar,50).Value = TextBox1.Text.Trim();
cmd.ExecuteNonQuery();
实例2、SQL Server 实现批量的插入数据:
通过向Insert Into语句嵌入Select语句,可以实现向数据库批量插入数据 Insert Into tb_Student_Copy(Stu_Name,Stu_Age,Stu_Sex,Stu_HouseAddress) Select Stu_Name,Stu_Age,Stu_Sex,Stu_HouseAddress from tb_Student
PS:Select 中的查询字段需要和Insert Into中数据列匹配
实例3、利用存储过程录入数据:
Using(SqlCommand cmd = new Sqlcommand())
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "存储过程名";
SqlParameter[] Params = {
new SqlParameter("@Id",SqlDataType.Char,);
......
};
foreach(SqlParameter param in Params)
{
cmd.Parameters.Add(param);
}
SqlParameter sqlpara = cmd.Parameters.Add("@Return",SqlDbType.Int)
sqlpara.Direction =ParameterDirection.ReturnValue;//获取返回值
cmd.ExecuteNonQuery(); //执行存储过程
}
实例3、关于图片的存取:
(1)存储文件名的方法存取
(2)使用二进制存取用户图片FileStream fs = new FileStream(文件路径);BinaryStream bs = new BinaryStream(fs);将图片转换为文件流,再将文件流转换为二进制流;
实例4、关于数据的修改:
(1)、对象
Update tb_StuInfo Set Stu_Name=' ';
String Sql = Update tb_StuInfo Set Stu_Name = @stuName,Stu_Age=@stuAge,Stu_Sex=@stuSex;
Command cmd = new Command(Sql,Con);
cmd.Parameters.Add(@StuName,SqlDbType.Varchar,).Value = TextBox1.Text.Trim();
cmd.Parameters.Add(@stuAge,SqlDbType.Varchar,).Value = TextBox2.Text.Trim();
cmd.Parameters.Add(@stuSex,SqlDbType.Varchar,).Value = TextBox3.Text.Trim();
cmd.ExecuteNonQuery();
(2)、Sql语句
(3)、存储过程修改数据
实例5、数据的删除:
Delete * From tb_StuInfo Where stuName = ' '
ADO.NET 对象的更多相关文章
- ADO五大对象(转载)
来源:http://blog.csdn.net/u013201439/article/details/51111969 ADO五大对象(转载) 一.绪论 1.引言 在数据库应用系统中,必定要涉及到对数 ...
- ADO.NET对象的详解
1. Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接数据库所需要的其它参数.Connection对象会被Command对象使用,这样就能 ...
- ADO.NET对象之 DataTable
ADO.NET可以在与数据库断开连接的方式下通过DataSet或DataTable对象进行数据处理,当需要更新数据时才重新与数据源进行连接,并更新数据源. DataTable对象表示保存在本机内存中的 ...
- Ado.net对象
Connection对象主要提供与数据库的连接功能 Command 对象用于返回数据,修改数据,运行存储过程以及发送或检索参数信息的数据库命令. DataReader对象通过Command对象提供从数 ...
- ADO五大对象
ADO.NET五大对象, 1. Connection:与数据源建立连接. 2. Command:对数据源执行SQL命令并返回结果. 3. DataReader:读取数据源的数据,只允许对将数据源以只 ...
- 反射入门-浅谈反射用途_根据Ado游标对象创建list集合
本人大二菜鸟一只,今天在上课期间有个同学看着C#反射的内容说反射没什么用,一时之间也想不到什么更好的例子,就写了个根据泛型类型和游标反射创建List集合的Demo. 首先创建一个用于封装对应数据的en ...
- Winform开发之ADO.NET对象Connection、Command、DataReader、DataAdapter、DataSet和DataTable简介
ADO.NET技术主要包括Connection.Command.DataReader.DataAdapter.DataSet和DataTable等6个对象,下面对这6个对象进行简单的介绍:(1)Con ...
- ADO.NET 对象 结构图
- ADO Recordset 对象链接
http://baike.baidu.com/link?url=4Xdc46R8M5uj-BbOGaH761N5oDEYlGQJFeR2WbPwx1iQBusAUKU3qbWcHZCMmayatj9n ...
随机推荐
- java面向对象入门之带参方法创建
/* Name :创建带参的方法 Power by :Stuart Date:2015.4.25 */ //创建Way类 class Way{ //Way类成员的基本变量 int add1=123; ...
- Docker容器部署tomcat出现中文乱码
docker 容器部署tomcat后,日志文件中出现中文乱码,很多问号,中文的文件夹也是问好.先看看容器的locale: [root@docker1 ~]# docker exec -it 41de9 ...
- Navicat试用期破解方法(转)
转载网址https://blog.csdn.net/Jason_Julie/article/details/82864187 1.按步骤安装Navicat Premium,如果没有可以去官网下载:ht ...
- cmd - - - 随笔
dxdiag DirectX诊断工具 calc 计算机 cmd里面不想一点点输入冗长的文件路径?直接把这个文件拖到CMD窗口吧!你会发现 路径自己补上去了.有空格的还会自动加引号哟.
- 【leetcode刷题笔记】Substring with Concatenation of All Words
You are given a string, S, and a list of words, L, that are all of the same length. Find all startin ...
- 【leetcode】Balanced Binary Tree
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...
- Python3 内置函数补充匿名函数
Python3 匿名函数 定义一个函数与变量的定义非常相似,对于有名函数,必须通过变量名访问 def func(x,y,z=1): return x+y+z print(func(1,2,3)) 匿名 ...
- 练习题目 :if for while else range、xrange、zip
range在内存中直接生成指定的序列,当序列非常大时会浪费内存资源: xrange则不会直接生成一个list,而是每次调用返回其中的一个值,而非直接全部生成存于内存中 range([start,] s ...
- Vim 命令记录与回放
步骤如下: q+(a..z)寄存器名: 执行你要执行的操作: q 结束操作: 调用为@+寄存器: 列子如下: 在写PHP 程序时用的比较多的是创建函数: 如 function add_in(){ } ...
- Codeforces Round #250 (Div. 2) A, B, C
A. The Child and Homework time limit per test 1 second memory limit per test 256 megabytes input sta ...