



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浅析C#如何连接数据库实现查询功能 2009-08-25 14:18 编程无限 百度空间 我要评论(0) 每种编程语言最重要的部分就是对数据库的访问了。那么C#如何连接数据库实现查询功能?先需要复习一下数据库增删改查的简单语句。C#如何连接数据库实现查询功能?首先要求是进行驱动连接,连接好数据库后,就只剩下对数据库的访问了。查询可以参考一般数据库的查询。数据库操作四大步骤1、查询:select * from 表名(where 条件)2、插入:insert into 表明(字段1,字段2)values(值1,值2)3、修改:update 表名 set 字段1=值1,字段2=值2 (where 条件)4、删除:delete from 表名 (where条件)在.NET中,对数据库的访问有两种方式:oledb和sqlclient。两种连接数据库方式的不同之处是:oledb适合访问各种各样的数据库,而sqlclient只适用于sql server数据库,就访问速度而言这两种连接方式自然是sqlclient连接方式速度比较快,而相对也能够用范围来讲则是oledb连接方式较好。下面capucivar将使用oledb连接方式来对数据库进行访问。在连接数据库之前需要导两个包:System.Date和System.Date.Oledb。连接数据库就要创建一个连接对象OleDbConnection conn = new OleDbConnection();,然后就要写连接数据库的字符串了:conn.ConnectionString=provider=sqloledb.1;data source=.;initial catalog=dbname;user id=username;pwd=password;连接字符串一共有五部分:1、指明驱动2、指明数据源,即数据库所在的地址3、指定连接那个数据库4、用户名5、密码。接下来就该打开这个连接了:conn.open()。这样就连接好了数据库,剩下的就是对数据库进行访问了。首先来做一个查询,既然是查询,先不管怎么查询,我们知道查询出来的数据一定是个结果集,那么dot-net中的结果集是什么呢?常用的有这样两个:dataTable和dataSet。从表面看这两个分别是数据的表和数据的集合。两者的区别是:dataTable就是一个放在内存中存放数据的表,查询出来后若要将结果显示在某个控件上,只需指定数据源为dataTable的对象;而dateSet是表的集合,也就是说dataSet中可以放n个dataTable,查询时可以同时返回两个dataTable,在指定数据源时就要指定是dataSet中的哪个dataTable。比如有一个dataSet对象ds,那么指定数据源时就要这样写:ds.Tablesindex。查询结束之后就要及时关闭连接:conn.close()。下面就来做一个登陆界面来熟悉对数据库的查询操作:C#如何连接数据库?首先创建数据库capucivar和表users,并在表中添加一行数据:1. createdatabasecapucivar 2. createtableusers 3. ( 4. uidintprimarykeyidentity(1,1), 5. usernamevarchar(100), 6. userpassvarchar(100) 7. ) 8. insertintousers(username,userpass)values(aaa,aaa)新建一个解决方案,然后在解决方案里添加项目。因为是与用户交互的图形界面,所以操作与以前有所不同,这次就要选择windows 应用程序。在界面的左边是wingdows窗体的控件,如果需要那个控件只需要将它拖放至右边的窗体上即可,最好将控件的name属性也改一下。界面做好之后,如果那个控件需要有一个监听事件,鼠标右击属性,右下角就会出现控件的属性和事件,选中相应的事件后双击直接进入代码编写相应代码就可以了。我们拖放两个Lable(标签),两个TextBox(单行文本框)和一个button(按钮),做好一个简单的登陆界面。注意:对于密码框不应该明文显示,应该以“*”或其它的代替,所以要将它的属性passwordchar改为“*”。下面写数据库的连接即查询,因为数据库操作是经常要进行的,所以一般习惯将对数据库的连接和操作单独作一个项目:9. usingSystem; 10. usingSystem.Collections.Generic; 11. usingSystem.Text; 12. usingSystem.Data;/System.Data和System.Data.OleDb一定要导入 13. usingSystem.Data.OleDb; 14. namespaceDb/命名空间 15. 16. publicclassConnDb 17. 18. OleDbConnectionconn=null;/定义连接对象为null 19. publicConnDb()/构造函数 20. 21. if(conn=null) 22. 23. conn=newOleDbConnection(); 24. conn.ConnectionString=provider=sqloledb.1;datasource=.;initialcatalog=capucivar;userid=sa;pwd=; 25. 26. if(conn.State=ConnectionState.Closed) 27. /如果连接的状态是关闭的话 28. conn.Open();/打开连接 29. 30. 31. publicDataSetquery(stringsql) 32. 33. DataSetds=newDataSet();/创建dataSet对象 34. OleDbDataAdapterda=newOleDbDataAdapter(sql,conn);/适配器,用于填充dataSet或dataTable 35. da.Fill(ds);/使用Fill()方法填充dataSet 36. connClose();/关闭连接 37. returnds;/返回DataSet 38. 39. publicvoidconnClose()/关闭连接的方法 40. /先判断连接是否关闭,如果没有关闭就将它关闭 41. if(conn.State=ConnectionState.Open) 42. 43. conn.Close();/关闭连接 44. 在已经做好的图形用户界面,选中一个控件,鼠标右击属性。右下角找到按钮的点击事件后双击该事件(此处只需要双击按钮)直接进入代码编写相应响应事件代码。完整代码如下:45. usingSystem; 46. usingSystem.Collections.Generic; 47. usingSystem.ComponentModel; 48. usingSystem.Data; 49. usingSystem.Drawing; 50. usingSystem.Text; 51. usingSystem.Windows.Forms; 52. namespacelogin/命名控件 53. 54. publicpartialclassForm1:Form 55. 56. publicForm1() 57. 58. InitializeComponent(); 59. 60. privatevoidlogin_but_Click(objectsender,EventArgse)/按钮的单击事件 61. 62. /得到用户输入的用户名和密码 63. stringname=_text.Text; 64. stringpass=this.pass_text.Text; 65. /写sql语句 66. stringsql=string.Format(select*fromuserswhereusername=0anduserpass=1,name,pass); 67.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高空作业施工安全知识培训课件
- 北京实操仿真考试题库及答案
- Umbralisib-hydrochloride-Standard-生命科学试剂-MCE
- 北京安全c证考试试题及答案
- 北大计算能力考试题库及答案
- 山东编导考试题目及答案
- 街道社工考试题及答案
- 高校消防知识培训课件
- 保安员考试00题题库及答案
- 蚌埠二中考试试卷真题及答案
- 变更风险识别、评估记录表参考模板范本
- 五年级语文阅读理解十篇(含答案)
- DB45T2053-2019 重质碳酸钙单位产品能源消耗限额
- 焊研威达埋弧焊机小车A系列说明书
- 静脉血栓栓塞症抗凝治疗微循环血栓防治专家共识
- 有机热载体锅炉安装工程施工方案完整
- 常规保养双人作业流程新模板汇总
- 处方点评与案例分析
- 数字化管道综述
- 英语研究性课题生活中的英语
- 发动机零部件英语词汇
评论
0/150
提交评论