ADO.Net 数据库访问技术
1.在web.Config配置文件中设置连接字符串
<connectionStrings>
<add name="connString" connectionString="Data Source=localhost;Initial Catalog=Stud;Integrated Security=false;uid=sa;pwd=123456"/>
</connectionStrings>
取得连接字符串的方法
String strconn = ConfigurationManager.ConnectionStrings["connString"].ToString();
或者
<appSettings>
<add key="connString" value="Data Source=localhost;Initial Catalog=Stud;Integrated Security=false;uid=sa;pwd=123456"/>
</appSettings>
得连接字符串的方法
String strconn = ConfigurationManager.AppSettings["connString"].ToString();
Data Source或者Server、Address:数据库服务器名称;Initial Catalog或者DataBase:数据库名称Integrated Security默认等于false,等于true时使用Windows身份验证,不必输入用户名,密码。
2.Ado.Net 数据访问对象(sql.net 添加引用using System.Data.SqlClient)
2.1 sqlConnection对象
常用属性:
ConnectionString 数据库连接字段
ConnectionTimeout 连接超时时间
Database 所连接的数据库
DataSource 服务器
Provider 所使用的数据提供程序(Data Provider)
State 数据库连接的状态,有以下几种状态
ConnectionStatus.Broken 连接中断
ConnectionStatus.Closed 连接关闭
ConnectionStatus.Connecting 正在连接
ConnectionStatus.Executing 连接对象正在执行命令
ConnectionStatus.Fetching 连接对象正在检索数据
ConnectionStatus.Open 连接已打开
常用方法:
Open,Close打开关闭连接
CreateCommand 返回一个与SqlConnection关联的SqlCommand对象
ChangeDataBase 改变连接的数据库
2.2SqlCommand对象
常用属性:
CommandText:数据库执行语句
CommandTimeout 执行超时时间
Parameters 参数集合
String mySql = "SELECT * FROM tblDepartment WHERE ID=@id";
SqlParameter parameter = new SqlParameter("@id", );
SqlCommand cmd = new SqlCommand(mySql,myConn);
cmd.Parameters.Add(parameter);
或者
SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@name", "Pudding"), new SqlParameter("@ID", "") };
cmd.Parameters.AddRange(paras);
Connection 对应的连接对象
CommandType 用于指示如何解释CommandText有以下几种取值:
CommandType.StoredProcedure 此时CommandText 应该取值为存储过程的名称
CommandType.TableDirect 此时CommandText为要访问的表名
CommandType.Text 默认。Sql文本命令,在此命令中不能使用?占位符
常用方法
CreateParameter 创建SqlParameter实例
ExecuteNonQuery 只返回受影响的行数
ExecuteScalar 返回查询结果第一行第一列的值,忽略其他行,一般用于只返回一个查询结果的查询语句
ExecuteReader 返回一个SqlReader对象
常用构造函数
SqlCommand(),SqlCommand(cmdText),SqlCommand(cmdText,conn)
3 SqlDataReader对象 使用DataReader对象可以从数据库中得到只读的,只能向前的数据流,且同一时间内存中只有一条数据,可以提高程序性能,减少系统开销
常用属性:
FieldCount 当前行中的列数
IsClosed 支出对象是否关闭
RecordsAffected 执行SQL语句时受影响的行数
常用方法
Read返回布尔值,将SqlDataReader推进到下一行,开始时SqlDataReader 指向数据集第一条记录之前,需用Read方法把数据推进到下一条记录并判断是否还有未读的记录
Close 关闭对象
IsDBNull 用于检查返回的列是否包含NULL值
GetBoolean(int i),GetString(int i),GetInt32(int i),GetByte(int i),GetDouble(int i),GetDateTime(int i)
SqlCommand cmd = new SqlCommand(mySql,myConn);
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
ListBox1.Items.Add("院系 专业");
ListBox1.Items.Add(String.Format("{0} {1}", dr.GetString(), dr["专业"].ToString()));//两种访问字段的方法1.使用对应的get方法+index;2.使用字段名或列序号做下标
}
ADO.Net 数据库访问技术的更多相关文章
- ADO.NET数据库访问技术(转)
这几天的自学,现在总结一下关于C#中连接数据库的一些知识点: 1.使用Connection连接数据库的步骤: (1).添加命名空间 System.Data.SqlClient(注意:初学者经常会忘记) ...
- C#-数据库访问技术 ado.net——创建 数据库连接类 与 数据库操作方法 以及简单的数据的添加、删除、修改、查看
数据库访问技术 ado.net 将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术 1.创建数据库,并设置主外键 ...
- ADO.NET数据访问技术
ADO.NET数据访问技术 就是将C#和MSSQLl连接起来的纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用.是所有数据访问技术的基础. A ...
- C#与数据库访问技术总结(十八)
ADO.NET 代码综合示例 前面已经介绍过OLE DB.NET和SQL Server.NET数据提供者可以用来连接不同的数据源. 以下代码不仅综合演示了使用ADO.NET的这两种数据提供者访问数据库 ...
- c# 窗体开发4 数据库访问技术
ADO.NET的名称起源于ADO(ACTIVEX DATA OBJECTS) USING SYSTEM; USING SYSTEM.COLLECTIONS.GENERIC; USING SYSTEM. ...
- 数据库访问技术 odbc dao rdo uda jet oledb
一.UDA(UniversalDataAccess) 这是微软提供的通用数据访问策略.包括ADO.OLEDB和ODBC.它不光提供了数据库的访 问能力,对于其它的数据存储技术也同样支持,如目录服务.E ...
- C#与数据库访问技术总结(七)综合示例
综合示例 说明:前面介绍了那么多,光说不练假把式,还是做个实例吧. 表:首先你要准备一张表,这个自己准备吧.我们以学生表为例. 1.ExecuteScalar方法 ExecuteScalar方法执行返 ...
- VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
1.首先,要用#import语句来引用支持ADO的组件类型库(*.tlb),其中类型库可以作为可执行程序 (DLL.EXE等)的一部分被定位在其自身程序中的附属资源里,如:被定位在msado15.dl ...
- C#与数据库访问技术总结(十六)之 DataSet对象
DataSet对象 DataSet对象可以用来存储从数据库查询到的数据结果,由于它在获得数据或更新数据后立即与数据库断开,所以程序员能用此高效地访问和操作数据库. 并且,由于DataSet对象具有离线 ...
随机推荐
- CSS系列:表达式(Expression)`淘汰`
概述 CSS表达式是动态设置CSS属性的强大(但危险)方法.Internet Explorer从第5个版本开始支持CSS表达式. 兼容性 expression方法在其它浏览器中不起作用,因此在跨浏览器 ...
- FZU 2032 高精度小数加法
题目描写很没意思..就是说给出n个小数 求它们的总和 因为给出的小数点后最多16位而要求保存至12位 而能直接使用的最精确的double只能到12位 于是13的进位可能被忽略 于是不可以用double ...
- cURL 学习笔记与总结(4)使用 cURL 从 ftp 上下载文件与上传文件到 ftp
下载: <?php $curlobj = curl_init(); curl_setopt($curlobj, CURLOPT_URL, "ftp://192.***.*.***/文件 ...
- sql语句什么时候用双引号或者单引号
INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN ); 如果数据是字符型,必须 ...
- [源码]随机获取虾米音乐song_id API文件
[源码]随机获取虾米音乐song_id API文件 January 11, 2015 注意:此API请放置于国内主机使用,如香港.北京等等,否则会提示:虾米音乐在您所处的国家或地区暂时无法使用 < ...
- 【Xamarin笔记】Events, Protocols and Delegates
Events, Protocols and Delegates 事件.协议和委托 This article presents the key iOS technologies used to re ...
- razor 添加html5属性
在 HTML5 中, 可以使用 data- 属性来表示用户数据,这些数据甚至可以是 JSON 格式的数据,对 Web 前端开发带来很大的方便. 在 MVC 的 Razor 中,可以使用匿名对象来生成定 ...
- insert into hi_user_score set hello_id=74372073,a=10001 on duplicate key update hello_id=74372073, a=10001
insert into hi_user_score set hello_id=74372073,a=10001 on duplicate key update hello_id=74372073, a ...
- Linux 下动态库 / 静态库(依赖)
一. 依赖动态库的动态库 libfun.so依赖动态库libtest.so(libfun.so动态库里的函数intnothing()调用了libtest.so里的intmytest()函数),而mai ...
- sqlserver 在脚本中,为所有字符前没有N标记的字符增加N
{[^N]}{'[\u4e00-\u9fa5]|[\u4e00-\U9fa5]|[0-9]|[A-Z]} \1N\2