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

(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. Vim cscope

    /********************************************************************** * Vim cscope * 说明: * 之前使用Vim ...

  2. -_-#【Dom Ready / Dom Load】

    Dom Ready和Dom Load DOM Ready 详解 javascript的domReady 域名解析 - 加载html - 加载js和css - Dom Ready - 加载图片等其他信息 ...

  3. MySQL join的实现原理及优化思路

    Join 的实现原理 在MySQL 中,只有一种Join 算法,也就是Nested Loop Join,没有其他很多数据库所提供的Hash Join,也没有Sort Merge Join.顾名思义,N ...

  4. NGINX(一)内存结构

    ngx_buf_t和ngx_chain_t是nginx中操作内存的重要手段, 很多的数据都需要通过这个结构进行保存. 其中ngx_buf_t中保存一块可用内存, ngx_chain_t则是将内存块连接 ...

  5. 29、activity横竖屏切换细节问题

    1 import android.app.Activity; import android.content.Intent; import android.os.Bundle; import andro ...

  6. STM32 串口功能 库函数 详解和DMA 串口高级运用(转载)

    数据传输时要从支持那些相关的标准?传输的速度?什么时候开始?什么时候结束?传输的内容?怎样防止通信出错?数据量大的时候怎么弄?硬件怎么连接出发,当然对于stm32还要熟悉库函数的功能 具起来rs232 ...

  7. (Trie) uvalive 3942 Remember the word

    题意:告诉你一个母串和子串,能用多少种不同的方案组合出母串. 思路:字典树(显然)+DP DP: dp[i]+=dp[j+1]  i<=j<=m-1,且i到j的字符串能在字典树中找到.也就 ...

  8. 【转载】linux信号处理及libcurl的坑

    转载自http://www.cnblogs.com/mumuxinfei/p/4363466.html 前言:     最近有个项目, 需要访问第三方服务. 该服务是通过http的形式访问的, 为了安 ...

  9. delphi 删除目录和创建目录,临时文件夹

    获取用户当前的Windows临时文件夹function GetWinTempPath: string;varTempDir: array[0..255] of char;beginGetTempPat ...

  10. Fun with layers

    Fun with layers 这篇文章的有些内容很奇怪,我根本就没有这种现象,所以暂时就这样吧 In this post, I’ll explain how to add a border, rou ...