北大青鸟

首页 > .Net技术教程

站内公告

.NET技术教程之ADO.NET学习技巧集锦

责任编辑:宏鹏来源:武汉北大青鸟鲁广校区时间:10-19
导读:.NET技术教程之ADO.NET学习技巧集锦旨在帮助大家更好地掌握NET技术。北大青鸟武汉宏鹏鲁广校区从ADO.NET学习的原因、方法和要注意的知识点进行详细解释。

.NET技术教程之ADO.NET学习技巧集锦旨在帮助大家更好地掌握NET技术。北大青鸟武汉宏鹏鲁广校区从ADO.NET学习的原因、方法和要注意的知识点进行详细解释。

为什么要学ADO.NET

方便使用C#代码语句对数据库表做相应的操作. 有时候,要对数据库表里的数据进行批量处理,而一些SQL语句和存储过程等编写什么繁琐,可以用ADO进行批量操作.

什么是ADO.NET

ADO.NET就是一组类库,这组类库可以让我们通过程序的方式访问数据库,就像System.IO的类操作文本一样,System.Data,这组类是用来操作数据库(不光是MSSql Server),它提供了统一的编程接口让操作其他数据库(Access,Oracle)等的方式和操作MSSql Server 一致.

ADO.NET组成

●数据提供程序

●Connection-----连接

●Command------命令 sql语句交给它执行

●DataReader 只读只进的结果集-----sql语句执行完返回的数据存放在这里

●DataAdapter-----数据适配器

●数据集(DataSet)----内存里的数据库

●断开时链接的数据库操作

ADO.NET五大类图解过程

个对象Connection

●读取数据库数据之前先要创建一条路

●读取Sql Server数据库使用

●创建Sqlconnection对象    (不同的数据库操作不同的Connection)

●获取连接字符串

●VS视图-服务器资源管理器-数据库连接上点右键-添加连接 在新添的数据库上点右键 属性 里有连接字符串

using System.Data.SqlClient;

连接SQLServer数据库

连接字符串:程序通过连接字符串 指定要连哪台服务器上的、哪个实例的哪个数据库、用什么用户名密码等。

ADO.Net中通过SqlConnection类创建到SQLServer的连接,SqlConnection代表一个数据库连接,ADO.Net中的连接等资源都实现了IDisposable接口,可以使用using进行资源管理。

第二个对象Commend

操作Sql Server 数据库使用SqlCommand对象

SqlCommand表示向服务器提交一个命令(sql语句等),CommandText属性为要执行的Sql语句,ExecuteNonQuery方法执行一个非查询语句,(Update,Insert,Delete等)

● 常用的三个方法

ExecuteNonQuery() 执行对数据库的增删改,返回受影响的行数

ExecuteScalar()执行查询,返回行列

ExecuteReader() 执行查询,返回DataReader对象

异常处理

在执行数据库操作时,如果数据库服务器未打开,或者sql语句写错了会怎么样?

可以使用 try....catch....finally 来捕获异常

使用异常处理可以保证一个功能出错不影响另一个功能,比如添加操作失败,不影响查询的操作...

ExecuteScalar

SqlCommand的ExecuteScalar方法用于执行查询,并返回查询所返回的结果集中行的列,因为不能确定返回值的类型,使用返回值的object 类型.

得到自动增长字段的主键值,在values关键词前面加上output inserted.id,其中id为逐渐子段名,执行结果就是插入的主键值,用ExecuteScalar执行方便.

ExecuteReader

执行有多行结果集的用ExecuteReader

DataReader 只读只进的结果集

HasRow属性返回是否有行

ExecuteReader 返回 SqlDataReader

reader的getstring,getInt32等方法只接受整数参数,也就是序号,用GetOrdinal方法根据列明动态得到序号.

更简单的方法reader["UserName"]

为什么用using,Close: 关闭以后还能打开。Dispose:直接销毁,不能再次使用。using在出了作用域以后调用Dispose,SqlConnection,SqlDataReader等的Dispose内部都会做这样的判断,判断有没有close,如果没有Close就先Close再Dispose.

SQL注入漏洞攻击

登录判断: select * from T_users where Username=.....and Password=....,将参数拼到SQL语句中.

构造恶意的Password : 'or'1' ='1

防范注入漏洞攻击的方法:不使用SQL语句拼接,通过参数赋值.

DataSet

每次读取数据都创建连接,执行command得到SqlDataReader太麻烦,让我们封装一个方法吧!

sqlDataReader是连接相关的,sqlDataReader中的查询结果并不是放到程序中的,而是放在数据库服务器中,SqlDataReader只是相当于放到一个指针(游标),只能读取当前游标指向的行,一旦连接断开就不能再读取,这样做的好处就是无论查询结果有多少条,对程序占用的内存都几乎没有影响.

SqlDataReader对小数据量的数据来说带来的只有麻烦,优点可以忽略不计,ADO.Net中提供了数据集的机制,将查询结果填充到本地内存中,这样连接断开,服务器断开都不影响数据的读取.

DataSet dataset =new DataSet(); SqlDataAdapter adapter =new SqlDataAdapter(cmd); adapter.Fill(dataset);

SqlDataAdapter是Dataset和数据库之间沟通的桥梁,数据集DataSet包含若干表DataTable,DataTable包含若干行DataRow.

.NET技术教程之ADO.NET学习技巧集锦让更多的人对.NET学习有了更多的认识。

    看过该.Net技术教程的还看过

本文标题:.NET技术教程之ADO.NET学习技巧集锦,责任编辑:宏鹏,来源:武汉北大青鸟鲁广校区栏目,于10-19发布于北大青鸟鲁广校区。.NET技术教程之ADO.NET学习技巧集锦旨在帮助大家更好地掌握NET技术。北大青鸟武汉宏鹏鲁广校区从ADO.NET学习的原因、方法和要注意的知识点进行详细解释。

专业老师指导

赵老师

赵老师

从事IT教育培训十年有余,致力于帮助广大学子找到适合自己的专业

立即在线咨询

培训咨询客服

陈老师

陈老师

IT培训专业客服,用自己的真诚解决了无数学子的困惑

立即在线咨询

本文地址:https://m.027hpedu.com/html/1018.html

文章标题:.NET技术教程之ADO.NET学习技巧集锦

上一篇:

下一篇:

热点关注

推荐.Net技术教程

热门.Net技术教程

初中生
高中生
大学生
打工者
男生
女生

预约你的精彩未来

预约将免费领取7天课程体验卡

-------请选择试预约课程-------

JAVA
WEB前端
PHP
UI设计
Python
电子商务
视频剪辑
大数据工程师
平面设计

83345人已领取

全国百余家校区

只为您方便就学

北大青鸟鲁广校区

北大青鸟鲁广校区

武汉市洪山区珞喻路724号(地铁二号线光谷广场站F口出)

预约到校
领取学习大礼包

首页

热门课程

视频网课

新闻资讯

关于学校

联系学校

预约选课申请

  • 预约时间

    请选择预约时间

  • 预约课程

    请选择预约课程

  • 姓   名
  • 手机号
  • QQ 号
  • 微信号

添加老师微信号

专业老师24小时1对1学习指导

定制专属于你的专属学习方案

微信号:17740513250

复制老师的微信号

复制成功啦

快去微信添加老师为好友吧~

北大青鸟小青

微信号:17740513250

北大青鸟小青

微信号:17740513250

设置备注
小主知道啦