SQl Server——ADO.NET五大对象

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 在某些编程中总是会需要用到数据库,那如何让应用程序和数据库之间建立联系呢?ADO.NET就提供了应用程序连接数据库的桥梁

ADO.NET是什么?


ADO.NET是一组用于和数据源进行交互的面向对象类库。简单来说也就是访问数据库的一种方式


为什么要使用ADO.NET?


在某些编程中总是会需要用到数据库,那如何让应用程序和数据库之间建立联系呢?ADO.NET就提供了应用程序连接数据库的桥梁


ADO.NET由哪些组成呢?


DataSet:数据集


.NET Framework:数据提供程序,为了实现数据操作和对数据的访问


.NET Framework有哪些对象?


aHR0cHM6Ly9ia2ltZy5jZG4uYmNlYm9zLmNvbS9waWMvYjY0NTQzYTk4MjI2Y2ZmYzBkMmI2NzIzYjkwMTRhOTBmNjAzZWExYQ.png


Connection:连接数据库

Command:执行SQL语句

DataReader:读取数据库

DataAdapter:将读取的数据填充到DataSet中

DataSet:结果集


顺口溜:Connection相当于一把钥匙,打开图书馆的大门,命令Command去找一本英语书,找到之后但书上全是英文它不认识,就让DataReader去翻译,翻译完成之后传输给了DataAdapter,最后它就拿回了自己家DataSet


SqlConnection


属性和方法


  • ConnectionString:获取或者设置用于打开SQL Server数据库的字符串
  • Database:获取当前数据库或者在连接打开后要使用的数据库的名称
  • State:获取连接的当前状态
  • Provider:包含Connection对象的数据提供者名称
  • DataSource:获取要连接的SQL Server实例的名称
  • Open():打开一个数据库的连接
  • Close():关闭一个已经打开的连接
  • Execute:该方法可以执行SQl语句,并且返回一个RecordSet对象


SqlCommand


属性


  • CommandText:获取或者设置要对数据源执行的T-SQL语句或者存储过程
  • CommandTimeout:获取或者设置在终止执行命令的尝试并生成错误之前的等待时间
  • CommandType:获取或者设置一个值,该值指示如何解释CommandText属性
  • Connection:获取或者设置Command的此实例使用的Connection
  • DesignTimeVisible:设置一个值,该值指示命令对象是否应在Windows窗体设计器控件中可见


方法


  • ExecuteNonQuery:对连接执行T-SQL语句并返回受影响的行数
  • ExecuteReader:已重载,将CommandText发送到Connection并生成一个DataReader
  • ExecuteScalar:执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或者行


SqlDataAdapter:


属性


  • SelectCommand:用于设置从记录集中选择记录的命令
  • InsertCommand:用于设置向记录集添加记录的命令
  • UpdateCommand:用于设置向记录集更新记录的命令
  • DeleteCommand:用于设置从记录集中删除记录的命令


方法


  • Fill:用于DataSet中添加或刷新行
  • FillSchema:用于将DATaTable添加到DataSet中
  • Update:用于为DataSet记录集中每个已插入、已更新或已删除的行调用相应的INSERT、UPDATE、DELETE语句
  • Dispose:该方法用于销毁SQLDataAdapter对象


SqlDataSet:


是ADO.NET结构的主要组件,它是从数据源中检索到的数据在内存中的缓存。由一组DataTable对象组成


20200419191744248.png


属性


  • DataSetName:当前DataSet的名称
  • NameSpace:DataSet的命名空间
  • Tables:当前DataSet中包含的表的集合
  • Relation:当前DataSet中表之间的关系的集合


方法


  • Copy:复制DataSet的结构和数据
  • Clone:复制DataSet的结构吗,但不复制数据
  • Clear:消除DataSet中的数据


怎样才能让它们建立连接呢?


第一步:建立连接


第二步:创建命令对象


第三步:运行命令


第四步:使用记录集


思维导图


20200419113613561.png


总结


这次对SQl Server的系统学习,发现ADO建立与数据库的连接方法与之前敲学生时使用Visual Basic连接数据的方法是相似的,都是:先连接数据源—>执行SQL语句—>返回结果集这样一个过程。善于在学习中找寻相通点这是我之后应该加强的!


不足之处欢迎补充 !😊      

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
27天前
|
SQL Java 数据库连接
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
|
3月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
4月前
|
SQL 关系型数据库 MySQL
INSERT INTO t_a.tableName SELECT * FROM t_b.tableName 如何通过定义一个list对象,包含多个tableName,循环执行前面的sql,用MySQL的语法写
【8月更文挑战第7天】INSERT INTO t_a.tableName SELECT * FROM t_b.tableName 如何通过定义一个list对象,包含多个tableName,循环执行前面的sql,用MySQL的语法写
50 5
|
5月前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
134 13
|
5月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
|
5月前
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
73 6
|
5月前
|
存储 SQL C++
对比 SQL Server中的VARCHAR(max) 与VARCHAR(n) 数据类型
【7月更文挑战7天】SQL Server 中的 VARCHAR(max) vs VARCHAR(n): - VARCHAR(n) 存储最多 n 个字符(1-8000),适合短文本。 - VARCHAR(max) 可存储约 21 亿个字符,适合大量文本。 - VARCHAR(n) 在处理小数据时性能更好,空间固定。 - VARCHAR(max) 对于大文本更合适,但可能影响性能。 - 选择取决于数据长度预期和业务需求。
458 1
|
5月前
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
378 3
|
4月前
|
SQL 安全 Java
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client
530 0