| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
也叫中间层,是网站的精髓,掌控应用程序的业务逻辑。
(文中例子只为说明问题,可以有错误地方,不可照抄) 网管论坛bbs_bitsCN_com
1.连接数据库 网管bitscn_com
1)打开sql 连接
2)执行数据库操作,返回数据 (黄金法制:尽可能晚打开数据库,尽快关闭)
网管bitscn_com
3)关闭数据库连接 中国网管联盟bitsCN.com
建立连接的类是:SqlConnection,指定三个重要的参量:sql实例名、访问数据库授权信息、数据库名
例子:
|
SqlConnection connection =new sqlconnection 网管网www_bitscn_com connection.connectionstring=\"Sever=;user id=psd=database=;\" 网管u家u.bitscn@com connection.Open(); 网管联盟bitsCN@com |
2.提交命令于执行存储过程
网管下载dl.bitscn.com
1)创建SqlCommand对象: 网管论坛bbs_bitsCN_com
主要作用是:可以讲于数据库交互的信息保存起来,他存放的是要执行的sql语句和存储过程的名字;当然也包括存储过程的参数。
|
SqlCommand command = new SqlCommand(); 网管网www_bitscn_com comand.Connection = connection; 网管网www_bitscn_com
command.CommandText = \"Gegdd\"; 网管下载dl.bitscn.com command.CommandType = CommandType.StoreProcedure; 网管u家u.bitsCN.com |
2)执行命令和关闭连接
中国网管联盟bitsCN.com
这是值得自豪的时候,在创建完连接和sqlcommand对象后,就可以准备执行命令了。执行完应该马上关闭数据库连接。
网管论坛bbs_bitsCN_com
这里将要介绍多种执行方法(Exccute):ExcuteNonQuery、ExcuteScalar和ExcuteReader
网管论坛bbs_bitsCN_com
ExcuteNonQuery用于执行不返回任何记录的sql语句和存储过程,如更新、插入、删除操作时,常用此法。他可以返回一个整数值,用来说明影响的行数。
|
connectionOpen(); 网管u家u.bitscn@com command.ExcuteNonQuety(); 网管u家u.bitscn@com command.Close(); 网管联盟bitsCN_com |
网管u家u.bitsCN.com
ExcuteScalar也是返回一个单值,但是他不是返回一个影响的行数,而是从数据库里面读取的数据,如果用select查询得到多行数据,那么返回第一行第一列的数据
网管bitscn_com
ExecuteReader返回多条记录。他返回一个SqlDataReader对象,一个SqlDataReader对象是以顺序向前且只读的形式逐个读取并返回结果的。他的优点它是取数最快的对象,不利的一面是需要打开连接,在连接关闭前无法使用同一个连接执行其他任何数据库操作。在我们的解决方案种,通过SqldataReader取回所有记录,存入DataTable中(他可以存储数据而不打开连接),这样可以马上关闭数据库。 网管联盟bitsCN@com
----------------------------------------------- 网管联盟bitsCN_com
DataTable的分类是DataSet,他是个非常强大的对象,像一个内存中的数据库,他能存储数据表、他们的数据类型、表间关系等。正是因为他的负责行,dataset会消耗很多内存,所有避免使用他。 网管网www_bitscn_com
------------------------------------------------
经典代码:
|
conn.open(); 网管下载dl.bitscn.com
sqldataReader reader=comm.ExecuteReader(); // 和上文所说的,ExcuteReader返回一个SqlDataReader 网管bitscn_com DataTable table=new Datatable(); 网管网www.bitscn.com table.Load(reader); 网管bitscn_com reader.Close(); 网管u家u.bitsCN.com conn.Closer(); 网管下载dl.bitscn.com |
|
0
|
评论加载中…