博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库的检索(20)
阅读量:5987 次
发布时间:2019-06-20

本文共 1853 字,大约阅读时间需要 6 分钟。

对数据库中的数据索引,有两种方式,即分别通过数据适配器DataAdapter或者数据阅读器DataReader将数据读取出来放在控件中显示 出来或进行处理,一般DataReader配合DataCommand使用,主要是对DataReader实例化。
使用数据适配器DataAdapter读取数据示例:
protected void Button1_Click(object sender, EventArgs e) {
string ConnectionString = "Data Source=localhost Integrated Security=SSPI;Database=student;connect Timeout=30;Pooling=true;";//使用windows登陆 SqlConnection conn = new SqlConnection(ConnectionString);//创建连接对象conn SqlDataAdapter da=new SqlDataAdapter("select * from student-info",conn);//创建一个数据适配器对象da,用于读取student中的数据表student-info; DataSet ds = new DataSet();//创建数据集ds; conn.Open();//打开连接 da.Fill(ds);//将检索中的数据填充到ds数据集中 conn.Close();//关闭连接 this.ListBox1.DataSource = ds;//设置控件listbox1的数据源 this.ListBox1.DataTextField = "stud_name";//设置控件listbox要显示的文本 this.ListBox1.DataBind();//通过databind方法将数据绑定到控件 }
 
使用数据适配器DataReader读取数据示例:
protected void Button2_Click(object sender, EventArgs e) {
string ConnectionString = "Data Source=localhost Integrated Security=SSPI;Database=student;connect Timeout=30;Pooling=true;";//使用windows登陆 SqlConnection conn = new SqlConnection(ConnectionString);//创建连接对象conn SqlCommand comm = new SqlCommand("select * from student-info", conn);//创建通用命令器对象comm,用于读取student中的数据表student-info; conn.Open();//打开连接 SqlDataReader dr = comm.ExecuteReader();//通过实例化创建dr数据阅读器; this.ListBox2.DataSource = dr;//设置控件listbox1的数据源 this.ListBox2.DataTextField = "stud_name";//设置控件listbox要显示的文本 this.ListBox2.DataBind();//通过databind方法将数据绑定到控件 conn.Close(); }
从以上两种不同的数据读取方式可以看出,DataAdapter用来读取数据时需要建立数据集来保存读取出来的 数据,而DataReader对数据进行检索时,采用的是单向数据流的形式读取数据,两者比较,由于DataAdapter不涉及数据结构的操作和处理, 所以在读取数据速度时,要比DataAdapter快。
 点击按钮效果图:
DataAdapter一般用于数据量比较小的数据库或其他形式的 数据源,DataReaderr用于数据量相对比较大的数据库,DataReaderr是顺序阅读,
速度很快,据说要快30倍以上,但是DataReader读数据的时候是要占用连接的,而DataSet是不用的。
本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/317099,如需转载请自行联系原作者
你可能感兴趣的文章
SDN in Action: Deploy VXLAN with MP-BGP EV_P_N
查看>>
Maven学习总结(八)——使用Maven构建多模块项目
查看>>
Docker镜像与容器命令
查看>>
Java培训-日期类
查看>>
项目范围管理论文提纲
查看>>
python给qq发邮件
查看>>
关于mysql的 qps tps
查看>>
bootstrap datetimepicker 添加清空按钮
查看>>
Json学习总结(1)——Java和JavaScript中使用Json方法大全
查看>>
Myeclipse优化配置
查看>>
四大Java EE容器之简单比较
查看>>
我的友情链接
查看>>
oracle 11gR2 RAC存储迁移
查看>>
<org manual>翻译--2.8 抽屉
查看>>
脚本部署lnmp环境
查看>>
swift--button的简单实用
查看>>
翻译:Fast dynamic extracted honeypots in cloud computing--4.DYNAMIC HONEYPOT SERVICE
查看>>
linux企业常用服务---nfs
查看>>
树莓派机器人(002)--机器人走动--电动
查看>>
HDFS数据更新到hbase表
查看>>