ADO.Net的小知识(连接数据库)二
上次提到数据库连接有两种形式断开式连接和打开式连接,断开式连接我已经讲解了,下面我来给大家讲解一下打开式连接
(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的小知识(连接数据库)二的更多相关文章
- ADO.Net的小知识(连接数据库)
数据库连接分为两种,分别是断开式连接和打开式连接.下面分别和大家分享一下断开时连接的查询: (1)引入命名空间:using System.Data.SqlClient; 该语句用于导入和ADO.Net ...
- MFC 小知识总结二
1 UpdateData 不能及时更新控件内容 原因: UpdateData是通过数据交换实现改变控件显示的.改变了之后必需要调用一次OnPaint才干实现刷新. 因此,若是在一个函数里重复多次调用有 ...
- AngularJs——基础小知识(二)
AngularJs的过滤器 1.Currency :过滤器(金额货币格式化)
- js--Ajax的小知识(二):处理ajax的session过期的请求
问题的产生: 现如今Ajax在Web项目中应用广泛,几乎可以说无处不在. 有时会碰到这样个问题:当Ajax请求遇到Session超时,应该怎么办? 显而易见,传统的页面跳转在此已经不适用,因为Ajax ...
- 【C#小知识】C#中一些易混淆概念总结(二)--------构造函数,this关键字,部分类,枚举 分类: C# 2014-02-03 01:24 1576人阅读 评论(0) 收藏
目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 继上篇对一些C#概念问题进行细节的剖析以后,收获颇多.以前,读书的时候,一句话一掠而 ...
- HTML+CSS中的一些小知识
今天分享一些HTML.CSS的小知识,希望能够对大家有所帮助! 1.解决网页乱码的问题:最重要的是要保证各个环节的字符编码一致! (1)编辑器的编辑环境的字符集(默认字符集):Crtl+U 常见的编码 ...
- salesforce 零基础开发入门学习(十)IDE便捷小知识
在这里介绍两个IDE的便捷开发的小知识. 一) 本地调试 由于salesforce代码只能提交以后才能调试,所以很多时候调试代码很麻烦.新版增加了一个特性:即可以在本地调试相关的代码或者查看相关代码运 ...
- Jquery:小知识;
Jquery:小知识: jQuery学习笔记(二):this相关问题及选择器 上一节的遗留问题,关于this的相关问题,先来解决一下. this的相关问题 this指代的是什么 这个应该是比较好理 ...
- [小知识] 获取浏览器UA标识
这个随笔纯粹是小知识的积累,以后都会打上小知识的标签. 经常见的,下载移动app时,只有一个二维码,但扫码后,会根据手机是iphone还是android下载不同app,下面就是这个操作的代码: < ...
随机推荐
- Vim cscope
/********************************************************************** * Vim cscope * 说明: * 之前使用Vim ...
- -_-#【Dom Ready / Dom Load】
Dom Ready和Dom Load DOM Ready 详解 javascript的domReady 域名解析 - 加载html - 加载js和css - Dom Ready - 加载图片等其他信息 ...
- MySQL join的实现原理及优化思路
Join 的实现原理 在MySQL 中,只有一种Join 算法,也就是Nested Loop Join,没有其他很多数据库所提供的Hash Join,也没有Sort Merge Join.顾名思义,N ...
- NGINX(一)内存结构
ngx_buf_t和ngx_chain_t是nginx中操作内存的重要手段, 很多的数据都需要通过这个结构进行保存. 其中ngx_buf_t中保存一块可用内存, ngx_chain_t则是将内存块连接 ...
- 29、activity横竖屏切换细节问题
1 import android.app.Activity; import android.content.Intent; import android.os.Bundle; import andro ...
- STM32 串口功能 库函数 详解和DMA 串口高级运用(转载)
数据传输时要从支持那些相关的标准?传输的速度?什么时候开始?什么时候结束?传输的内容?怎样防止通信出错?数据量大的时候怎么弄?硬件怎么连接出发,当然对于stm32还要熟悉库函数的功能 具起来rs232 ...
- (Trie) uvalive 3942 Remember the word
题意:告诉你一个母串和子串,能用多少种不同的方案组合出母串. 思路:字典树(显然)+DP DP: dp[i]+=dp[j+1] i<=j<=m-1,且i到j的字符串能在字典树中找到.也就 ...
- 【转载】linux信号处理及libcurl的坑
转载自http://www.cnblogs.com/mumuxinfei/p/4363466.html 前言: 最近有个项目, 需要访问第三方服务. 该服务是通过http的形式访问的, 为了安 ...
- delphi 删除目录和创建目录,临时文件夹
获取用户当前的Windows临时文件夹function GetWinTempPath: string;varTempDir: array[0..255] of char;beginGetTempPat ...
- Fun with layers
Fun with layers 这篇文章的有些内容很奇怪,我根本就没有这种现象,所以暂时就这样吧 In this post, I’ll explain how to add a border, rou ...