C# 是如何跟SQL Server进行连接的?

在C#/.NET程序设计中,离不开ADO.NET。ADO.NET是.NET连接数据库的重要组件。使用其可以很方便地访问数据库,ADO.NET还可以访问Oracle数据库、Access数据库、SQL Server数据库等主流的数据库。使用ADO.NET连接数据库主要使用ADO.NET中的5个类。

数据库连接类Connection:如果连接SQLServer数据库,可以使用SqlConnetion类。在使用SqlConnection类是要引用一个System.Data.SqlClient的命名空间。

数据库命令类Command:如果连接的是SQLServer数据库,可以使用SqlCommand。数据库命令类主要执行对数据库的操作,比如插入、删除、修改等。

数据库读取类DataReader:如果连接SQLServer数据库,可以使用SqlDataReader。数据库读取类是数据库命令类在执行了查询操作后返回的结果的数据类型。数据库读取类只是数据库的连接状态处于打开状态时才能使用,当数据库关闭时数据库读取类中就不能够再取值了。

数据集类DataSet:数据集相当于一个虚拟数据库,每一个数据集中包括了多张数据表。即使数据库的连接处于断开状态,还是可以从数据集中继续存取记录,只是数据是存放在数据集中的,并没有存放在数据库中。

数据适配类DataAdapter:如果连接SQLServer数据库,可以使用SqlDataAdapter。数据适配器经常和数据集一起使用,通过数据适配器可以把数据库中的数据存放到数据集中,数据适配器可以说是数据集和数据库之间的一个桥梁。

连接数据库一般有两种方式:

1、使用SQL用户名、密码验证

Data Source = 服务器名;Initial Catalog = 数据库名;User ID = 用户名;Pwd = 密码(没有密码可以省略)

例如:public string connString = "Data Source=xp;Initial Catalog=ExpressManager;User ID = sa;Pwd = 123";

 2、使用windows身份验证

Data Source = 服务器名;Initial Catalog = 数据库名;Integrated Security = TRUE(或者:SSPI)

例如:public string connString = "Data Source=xp;Initial Catalog=ExpressManager;Integrated Security=TRUE";

在身份验证可以选SQL 用户名、密码验证。

接下来就是在源文件里加入连接数据库的代码,首先得在xxx.cs源文件中加入以下语句

using System.Data;

using System.Data.SqlClient;

接下来就是对数据库的操作类方法的实现:

[csharp] view plaincopyprint?
  1. // 数据库操作类
  2. class Express
  3. {
  4. public string connString = "Data Source=xp;Initial Catalog=ExpressManager;Integrated Security=TRUE";
  5. //创建连接对象的变量
  6. public SqlConnection conn;
  7. // 执行对数据表中数据的增加、删除、修改操作
  8. public int NonQuery(string sql)
  9. {
  10. conn = new SqlConnection(connString);
  11. int a = -1;
  12. try
  13. {
  14. conn.Open();  //打开数据库
  15. SqlCommand cmd = new SqlCommand(sql, conn);
  16. a = cmd.ExecuteNonQuery();
  17. }
  18. catch
  19. {
  20. }
  21. finally
  22. {
  23. if (conn.State == ConnectionState.Open)
  24. {
  25. conn.Close();    //关闭数据库
  26. }
  27. }
  28. return a;
  29. }
  30. // 执行对数据表中数据的查询操作
  31. public DataSet Query(string sql)
  32. {
  33. conn = new SqlConnection(connString);
  34. DataSet ds = new DataSet();
  35. try
  36. {
  37. conn.Open();      //打开数据库
  38. SqlDataAdapter adp = new SqlDataAdapter(sql, conn);
  39. adp.Fill(ds);
  40. }
  41. catch
  42. {
  43. }
  44. finally
  45. {
  46. if(conn.State== ConnectionState.Open)
  47. conn.Close();      //关闭数据库
  48. }
  49. return ds;
  50. }
  51. }

C#连接sqlServer数据库详解相关推荐

  1. 用Navicat连接服务器数据库详解

    用Navicat连接服务器数据库详解 https://www.2cto.com/database/201702/594659.html

  2. java启动监听器报错_JAVA通过JDBC连接Oracle数据库详解【转载】

    1.注册加载驱动 驱动名:DRIVER="oracle.jdbc.driver.OracleDriver"; Class.forName("驱动类名"); 2. ...

  3. C#连接Access数据库(详解)

    做一个用VS2012的C#连接Access数据库的备忘, SQL数据库固然强大,有大微软的强力技术支持,LINQ的方便操作,但是如果写一个小程序对数据库方面没有什么大的要求的话,将来在数据库方面就可以 ...

  4. 使用PLSQL Developer连接Oracle数据库详解

    **前景摘要:**本人使用plsql连接oracle折磨半天才得以正常连接使用,由于总是需要换机子,所以每次都要重新安装,所以将其记录下来,为以后不时之需. 安装过的系统: Windows7 64位 ...

  5. 纯java实现连接access数据库详解

    大家好,今天详细介绍一下纯java实现连接access数据库. 首先,连接驱动是要使用ucanaccess,这就需要几个jar包依赖 maven项目可以去寻找相应的依赖,将依赖导入项目后就ok了,然后 ...

  6. vb mysql加载控件_VB如何连接ACCESS数据库详解

    首先有一点要注意,数据库的使用与我们以往所使用的文本文件不同.例如我们使用文本文件,来记录各种有用的数据.那么大致有以下几步: 读取文件 -- 格式化数据 -- 关闭文件 -- 使用数据 如果数据量较 ...

  7. sqlserver数据库详解

    第一节:主要内容: 数据库的基础知识:基本概念.数据库组成,数据类型,数据库操作,管理.数据的支持,winform,网站,百度 数据库:DataBase 按照一定数据结构来组织.存储和管理数据的仓库. ...

  8. Java如何连接mysql数据库详解(代码)

    工具: https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) eclip ...

  9. ASP.net连接Mysql数据库详解

    1.资源:Mysql-5.6.24-win32.VS2013.mysql-connector-odbc-5.3.6-win32: 2.ODBC下载:在Mysql官网可下载Mysql ODBC,注意,什 ...

最新文章

  1. html基础代码笔记,HTML基础笔记
  2. 明天又回LOVO了!
  3. HUB管理步骤、桥端设置步骤和客户端使用步骤
  4. 【AC Saber】二进制
  5. android中string.xml文件的使用
  6. python使用ctypes模块下的windll.LoadLibrary报OSError: [WinError 193] % 不是有效的 Win32 应用程序...
  7. mysql中索引类型索引方法_MYSQL索引的类型和索引的方式
  8. [机器学习] --- Getting Started With MachineLearning
  9. Unix的***追踪
  10. 【Hadoop】:Windows下使用IDEA搭建Hadoop开发环境
  11. IPMI接口和BMC控制器
  12. 基于itext的pdf拼接
  13. 桌面计算机系统安装系统文件,电脑重装系统后还原桌面文件步骤
  14. 地表最强报表工具,一张模板秒杀数百Excel !
  15. Linux 第一次学习笔记
  16. 程序员的职业规划_程序员如何能做好职业规划,走出迷惘呢?这个能力矩阵法要告诉你...
  17. JPA/Hibernate 中@Formula的作用
  18. 赛扬n5095处理器怎么样 英特尔n5095核显相当于什么水平
  19. 一文带你了解什么是PACS系统源码
  20. linux系统查看网口流量,linux 查看网口流量

热门文章

  1. JAVA复习5(集合——HashSet)
  2. java整数四则运算课设_用面向对象方法设计实现整数的四则运算(java)
  3. TIMING_06 VIVADO环境下的时序约束 之 输入延迟约束
  4. 单行子查询返回多个行_sql多表查询练习,习题总结
  5. 这个网盘下载60MB/s!PanDownload复活了!
  6. 基于verilog贪吃蛇游戏设计
  7. 芯片工程师成长之路_实施工程师的成长之路 | 来自咸职厚溥17级学姐的分享
  8. java 死锁种类_用java写一个死锁
  9. mysql 数组判断_mysql 判断两个数组是否有交集
  10. 8类网线利弊_网线买机制成品还是自己DIY?有这些点要注意