ADO.NET 访问 Sql Server2008(一)

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介:            ADO.NET 是微软的 .NET  FrameWork中所包含的一组类 ,可以提供应用程序与数据库进行 通信  。         在以前的 数据库访问技术中,对于数据库的操作必须是在有连接的环境中,应用程序需要和数据源保持持续的链接  ,伸缩性和可扩展性比较差,占用资源也是比较多的 、 但是在ADO.NET中解决了这个问题  ,保证我们在  无连接的环境下也可以进行数据库的操作 。

           ADO.NET 是微软的 .NET  FrameWork中所包含的一组类 ,可以提供应用程序与数据库进行 通信  。      

  在以前的 数据库访问技术中,对于数据库的操作必须是在有连接的环境中,应用程序需要和数据源保持持续的链接  ,伸缩性和可扩展性比较差,占用资源也是比较多的 、

但是在ADO.NET中解决了这个问题  ,保证我们在  无连接的环境下也可以进行数据库的操作 。

      原理是这样:用户可以将数据源的子集下载到本地中,然后对本地的数据子集进行 操作,操作完之后 在连接到 网络 .并且更新子集到数据库 ,这样就完成了 所谓的无连接数据库访问 。 

      ADO.NET 的2个核心的组件是    DataSet 和 .NET 数据提供程序 ,  .

      DataSet  稍后介绍 

      .NET 数据提供程序不尽相同     有 SQL Server .NET数据提供程序    ODBC .NET 数据提供程序    OLE DB .NET 数据提供程序     Oracle .NET数据提供程序等等 、、 

     

    ADO.NET 访问数据流流程  

   

    1、与数据库的链接通过  SqlConnection类      在进行数据库的操作的时候  ,我们必须建立起和数据库的链接

     

Public NotInheritable Class SqlConnection _
	Inherits DbConnection _  
	Implements ICloneable

         SqlConnection类的实例表示了一个应用程序 和数据库只见的链接  ,很多语言访问数据库第一步都是这样  ,比如JDBC访问数据库中 获取一个 Connection对象一个 样 . 

         Dim  str  as  new String="Data Source=.\SQLEXPRESS;Initial Catalog=MyDB;Persist Security Info=True;User ID=sa;Password=1243"

          Dim  cn as  new SqlConnection    

         cn.ConnectionString=str //对 连接字符串进行赋值  我们也可以在构造 SqlConnection的时候进行初始化     

          cn.open()    //打开一个数据库     在建立了和数据库的连接之后 那么我们就要可以打开一个数据库       

2.  通过 SqlCommand对象来执行 SQL语句     

       这个类有三个  执行SQL语句的方法 每个方法含义不同 

        ExecuteReader   返回结果是一个 行的集合 ,返回SqlDataReader对象  我们可以对这个结果集进行数据的检索操作 下面的例子就是这个方法的实现

        ExecuteScalar    执行返回但一结果的命令  比如说我们条件查询  selete  count(* )  from  usertable  where id=111     那么返回的结果是一个值  我们使用这个  

        ExecuteNonQuery  执行 Update   Insert   Delete 改变数据库  但是 无记录集返回的 SQL命令       返回的是受影响的行数      

        接着上面的代码 下来: 

        dim  s  as new  SqlCommand () //构造SqlCommand对象

        s.Connection=  cn //对Connection属性赋值

        s.sqlString="select *  from  table" //sql  语句

        SqlDataReader  r=s.ExecuteReader() //执行sql语句   

 

3.  对返回的 SqlDataReader对象进行 检索   获得 结果记录集           、、 

      SqlDataReader类中包含着对结果记录集进行操作的方法  

       GetXXX(int  Column)  //根据列索引返回值 索引是基于  0开始的 这与  JDBC中访问数据库时候的 1开始不一样  

      GetXX(ByVal  ColumnName as  String)  //根据列的名字返回值  

      GetValues()  返回所有列的值结果是一个对象数组          

 

        接着上面的代码来    

        while(r.read())   //r.read()将数据指针向前移动一行 如果存在记录 那么 返回True  否则 返回 false   

 { 

      r.GetString(0)  ;//获得第一行的数据 

     r.GetString(1)  ;//获得第二行的数据

 

 

 4、在 执行SQL语句的时候 顺便带上 参数  在 一般情况下 我们用不到  ,具体用法如下

        //m为SqlCommand对象

       Dim sql As New SqlParameter
        sql.DbType = DbType.Int32
        sql.ParameterName = "@id"
        sql.Value = 100
        Dim sql2 As New SqlParameter
        sql.DbType = DbType.Int32
        sql.ParameterName = "@id1"
        sql.Value = 100
        m.Parameters.Add(sql)
        m.Parameters.Add(sql2)

 

 

 

 

 

 

 

 

相关实践学习
使用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
目录
相关文章
|
3月前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:详细步骤与最佳实践指南ali01n.xinmi1009fan.com
随着Web开发技术的不断进步,ASP.NET已成为一种非常流行的Web应用程序开发框架。在ASP.NET项目中,我们经常需要与数据库进行交互,特别是SQL数据库。本文将详细介绍如何在ASP.NET项目中连接SQL数据库,并提供最佳实践指南以确保开发过程的稳定性和效率。一、准备工作在开始之前,请确保您
301 3
|
14天前
|
SQL Oracle 数据库
使用访问指导(SQL Access Advisor)优化数据库业务负载
本文介绍了Oracle的SQL访问指导(SQL Access Advisor)的应用场景及其使用方法。访问指导通过分析给定的工作负载,提供索引、物化视图和分区等方面的优化建议,帮助DBA提升数据库性能。具体步骤包括创建访问指导任务、创建工作负载、连接工作负载至访问指导、设置任务参数、运行访问指导、查看和应用优化建议。访问指导不仅针对单条SQL语句,还能综合考虑多条SQL语句的优化效果,为DBA提供全面的决策支持。
44 11
|
3月前
|
SQL XML 关系型数据库
入门指南:利用NHibernate简化.NET应用程序的数据访问
【10月更文挑战第13天】NHibernate是一个面向.NET的开源对象关系映射(ORM)工具,它提供了从数据库表到应用程序中的对象之间的映射。通过使用NHibernate,开发者可以专注于业务逻辑和领域模型的设计,而无需直接编写复杂的SQL语句来处理数据持久化问题。NHibernate支持多种数据库,并且具有高度的灵活性和可扩展性。
52 2
|
3月前
|
SQL 关系型数据库 BI
使用 Webshell 访问 SQL Server 主机并利用 SSRS
使用 Webshell 访问 SQL Server 主机并利用 SSRS
|
3月前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:实现过程与关键细节解析an3.021-6232.com
随着互联网技术的快速发展,ASP.NET作为一种广泛使用的服务器端开发技术,其与数据库的交互操作成为了应用开发中的重要环节。本文将详细介绍在ASP.NET中如何连接SQL数据库,包括连接的基本概念、实现步骤、关键代码示例以及常见问题的解决方案。由于篇幅限制,本文不能保证达到完整的2000字,但会确保
|
4月前
|
SQL 存储 关系型数据库
C#一分钟浅谈:使用 ADO.NET 进行数据库访问
【9月更文挑战第3天】在.NET开发中,与数据库交互至关重要。ADO.NET是Microsoft提供的用于访问关系型数据库的类库,包含连接数据库、执行SQL命令等功能。本文从基础入手,介绍如何使用ADO.NET进行数据库访问,并提供示例代码,同时讨论常见问题及其解决方案,如连接字符串错误、SQL注入风险和资源泄露等,帮助开发者更好地利用ADO.NET提升应用的安全性和稳定性。
375 6
|
5月前
|
算法 Java 测试技术
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
|
5月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
5月前
【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
【Azure 应用服务】App Service 配置 Application Settings 访问Storage Account得到 could not be resolved: '*.file.core.windows.net'的报错。没有解析成对应中国区 Storage Account地址 *.file.core.chinacloudapi.cn
|
5月前
|
网络协议 NoSQL 网络安全
【Azure 应用服务】由Web App“无法连接数据库”而逐步分析到解析内网地址的办法(SQL和Redis开启private endpoint,只能通过内网访问,无法从公网访问的情况下)
【Azure 应用服务】由Web App“无法连接数据库”而逐步分析到解析内网地址的办法(SQL和Redis开启private endpoint,只能通过内网访问,无法从公网访问的情况下)