上次提到数据库连接有两种形式断开式连接和打开式连接,断开式连接我已经讲解了,下面我来给大家讲解一下打开式连接

(1)引入命名空间:using System.Data.SqlClient;

    该语句用于导入和ADO.Net和sqlserver连接的相关的类,它常用的类有:sqlConnection,sqlCommand,sqlDataAdapter,ataSet,sqlDataReader,SqlParameter等等

  (2)编写连接字符串:string connStr ="Server=.;Database=.Net_Teach_DB;User ID=Test;Password=test";

    该语句是数据库的地址,包括服务器名称,数据库名称,数据库的账号和密码(账号、密码可以省略不写)在asp.net中这个连接字符串一般写在webconfig中他的配置文                                           件如下:<connectionStrings>
            <add connectionString="Server=.;Database=.Net_Teach_DB;User ID=Test;Password=test" name="connStr" />
         </connectionStrings>

读取时:string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;

  (3)创建连接对象:SqlConnection conn = new SqlConnection(connStr);

    该语句用于创建连接对象,也就相当于一个和数据库连接的桥梁

  (4)创建执行对象:sqlCommand comm = new sqlCommand(sql,conn);

    执行对象就相当于一个执行者,一个执行者需要知道他要做什么去哪里执行,所以这个对象在创建时需要两个参数sql语句和连接对象

  (5)创建读取对象:sqlDataReader reader = comm.ExecuteReader();

    该对象是一个只读的文件流,将数据库中的数据读取出来发在集合中所以需要while循环遍历改文件流

  (6)用while循环读取数据:while(reader.read()){};

    用来遍历文件流

  (7)关闭连接:conn.Close();

    执行完所有的操作我们需要关闭连接,释放资源

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//导入命名空间
using System.Data.SqlClient;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
//连接字符串
string strData =" Data Source=.;Initial Catalog=fang_first;User ID=sa;pwd=******";
//创建连接对象
SqlConnection con = new SqlConnection(strData);
//创建执行对象
SqlCommand cmd = con.CreateCommand(sql,conn);
//打开连接
con.Open();
//创建读取对象
SqlDataReader reader= cmd.ExecuteReader();
//遍历读取对象
while(reader.Read())
{
} }
}
}
30.
31.
32. }
33. }
34.}

ADO.Net的小知识(连接数据库)二的更多相关文章

  1. ADO.Net的小知识(连接数据库)

    数据库连接分为两种,分别是断开式连接和打开式连接.下面分别和大家分享一下断开时连接的查询: (1)引入命名空间:using System.Data.SqlClient; 该语句用于导入和ADO.Net ...

  2. MFC 小知识总结二

    1 UpdateData 不能及时更新控件内容 原因: UpdateData是通过数据交换实现改变控件显示的.改变了之后必需要调用一次OnPaint才干实现刷新. 因此,若是在一个函数里重复多次调用有 ...

  3. AngularJs——基础小知识(二)

    AngularJs的过滤器 1.Currency :过滤器(金额货币格式化)       

  4. js--Ajax的小知识(二):处理ajax的session过期的请求

    问题的产生: 现如今Ajax在Web项目中应用广泛,几乎可以说无处不在. 有时会碰到这样个问题:当Ajax请求遇到Session超时,应该怎么办? 显而易见,传统的页面跳转在此已经不适用,因为Ajax ...

  5. 【C#小知识】C#中一些易混淆概念总结(二)--------构造函数,this关键字,部分类,枚举 分类: C# 2014-02-03 01:24 1576人阅读 评论(0) 收藏

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 继上篇对一些C#概念问题进行细节的剖析以后,收获颇多.以前,读书的时候,一句话一掠而 ...

  6. HTML+CSS中的一些小知识

    今天分享一些HTML.CSS的小知识,希望能够对大家有所帮助! 1.解决网页乱码的问题:最重要的是要保证各个环节的字符编码一致! (1)编辑器的编辑环境的字符集(默认字符集):Crtl+U 常见的编码 ...

  7. salesforce 零基础开发入门学习(十)IDE便捷小知识

    在这里介绍两个IDE的便捷开发的小知识. 一) 本地调试 由于salesforce代码只能提交以后才能调试,所以很多时候调试代码很麻烦.新版增加了一个特性:即可以在本地调试相关的代码或者查看相关代码运 ...

  8. Jquery:小知识;

    Jquery:小知识: jQuery学习笔记(二):this相关问题及选择器   上一节的遗留问题,关于this的相关问题,先来解决一下. this的相关问题 this指代的是什么 这个应该是比较好理 ...

  9. [小知识] 获取浏览器UA标识

    这个随笔纯粹是小知识的积累,以后都会打上小知识的标签. 经常见的,下载移动app时,只有一个二维码,但扫码后,会根据手机是iphone还是android下载不同app,下面就是这个操作的代码: < ...

随机推荐

  1. 缓存你的BITMAP对象

    在app中通常最占内存.占流量的元素就是图片了,图片往往又无处不在,特别是伴随着list,GridView或者ViewPager出现,这些图片随着你的滑动操作,时而出现在你的屏幕中,时而消失在屏幕之外 ...

  2. 白话spring依赖注入

    Spring能有效地组织J2EE应用各层的对象.Action?Service?DAO?,都可在Spring的管理下有机地协调.运行.Spring将各层的对象以松耦合的方式组织在一起,对象与对象之间没有 ...

  3. 在ubuntu on windows 上安装jekyll

    已知问题 安装ruby之后,重新启动ubuntu on windows,输入ruby命令,提示找不到. 发现的解决办法 执行下面命令 source /home/xxxx/.rvm/scripts/rv ...

  4. error MSB3027: Could not copy "xxx.dll" to "xxx.dll". Exceeded retry count of 10. Failed.

    错误提示内容: C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3363,5): error MSB302 ...

  5. 从Decorator,Adapter模式看Java的IO库

    我想任何一本介绍模式的书在讲到Decorator模式的时候不能不提到它的实际应用--在Java/IO库里面的应用,<<Java与模式>>这本书也不例外,有点不一样的是,这本书在 ...

  6. Mtom Encoding in WCF

    http://www.codeproject.com/Articles/632101/Mtom-Encoding-in-WCF http://msdn.microsoft.com/zh-cn/libr ...

  7. MVC5中使用KinEditor

    参考:http://www.cnblogs.com/weicong/archive/2012/03/31/2427608.html 第一步 将 KindEditor 的源文件添加到项目中,建议放到 / ...

  8. sqlserver任务导出Excle

    --sql语句就用下面的存储过程 /*--数据导出Excel 导出查询中的数据到Excel,包含字段名,文件为真正的Excel文件,如果文件不存在,将自动创建文件,如果表不存在,将自动创建表基于通用性 ...

  9. 在win64位,python64位2.7版本中安装pyHook

    今天看了一篇博文说的是利用pyhook监听键盘鼠标事件(感兴趣的可以看博客园中相关文章),文章中使用的pyHook模块的官方下载地址是:http://sourceforge.net/projects/ ...

  10. 关于使用digitalocean的vps

    先说说测试速度 平均在延迟125ms,机房选择新加坡 还有其他机房,比如伦敦,西海岸,阿姆斯特丹,基本全球覆盖. 以前用linode,virpus. linode以前有$5的套餐,现在最低都在10刀了 ...