数据库的访问是所有编程语言中最重要的部分,C#提供了ADO.Net部件用于对数据库进行访问。我们将从最简单易用的微软Access数据库入手讨论在C#中对数据库的访问。
C#中的Connection对象和Command对象与Access类似,但在这里我们还将使用其另一个与RecordSet类似的被称作ADODataReader的对象,它负责处理与查询有关的RecordSet对象。
首先,必须使用微软的Access创建一个数据库。运行Access,创建一个数据库,但不要创建任何表(我们将在下面的程序中创建表。),保存创建的数据库。
打开控制面板中的ODBC图标,点击SystemDNS标签,依次选择Add>MicrosoftAccess,并点击Finish按钮。在拉下来的对话框中输入数据源的免费精选名字大全,比如是mymdb,然后创建数据源,双击OK按钮。
在下面的程序中,我们将创建一个表,并在其中插入一些值。
程序非常地简单和直观。在Main()函数中,ADOConnection对象将数据源的免费精选名字大全取到构造器中,然后使用ADOConenction的Open()方法打开该连接。
在连接建立后,程序将创建包含二个字段的表a1,其中字段name的类型为字符型,vno的类型为整型。Createtable命令已经放在ADOCommand的构造器中,ExecuteNonQuery()方法用于执行这一查询,该方法不会返回任何记录集。同样,Insert和Delete查询也可以放到ADOCommand的Constructor中,因此可以象在VB中那样传递任何SQL查询。
ADODataReader是新出现的,它是本段程序中主要的对象,负责处理ADOCommand返回的记录集。使用xecute()方法,就可以看到从数据库中返回的数据。ADODataReader的Read()方法则返回布尔型的值,TRUE标志着数据在ADODataReader对象中,而且将当前指针移动到了ADODataReader对象的下一条记录上。
使用VisualStudio.Net编译下面的程序代码。
namespacedatabase1 { usingSystem; usingSystem.Data.ADO; publicclassClass1 { publicClass1() { // //在这里添加Constructor的逻辑 // } publicstaticintMain(string[]args) { try { ADOConnections=newADOConnection("DataSource=mymdb"); s.Open(); Console.WriteLine("ConnectionEstablished"); //创建表 Console.Write("WanttoCreateaTable?(y/n)"); stringch=Console.ReadLine(); if(ch=="y") { ADOCommandCreateTable=newADOCommand("CreateTablea1(vnointeger,namechar(20))",s); CreateTable.ExecuteNonQuery(); Console.WriteLine("AOCommandExecuted/TableCreated"); } //在表中插入值 Console.Write("WanttoInsertSomevaluesinaTable?(y/n)"); ch=Console.ReadLine(); if(ch=="y") { ADOCommandInsTable=new ADOCommand("insertintoa1values(1,'hi')",s); InsTable.ExecuteNonQuery(); Console.WriteLine("ValuesInserted"); } //删除整个表 Console.Write("WanttoDeleteAllRecordsPresentintheTable?(y/n)"); ch=Console.ReadLine(); if(ch=="y") { ADOCommandDeleteTable=newADOCommand("Deletefroma1",s); DeleteTable.ExecuteNonQuery(); Console.WriteLine("AllRecordsDeletedFromtheTable"); } //看所有记录 Console.Write("WanttoSeealltheRecordsPresentintheTable/Database(y/n)?"); ch=Console.ReadLine(); if(ch=="y") { ADOCommandAllRecs=newADOCommand("select*froma1",s); ADODataReaderr; AllRecs.Execute(outr); while(r.Read()) { for(inti=0;i<r.FieldCount;i++) { Console.Write(r.GetValue(i)+""); } Console.WriteLine(); } Console.WriteLine("AllRecordsDisplayed"); r.Close(); } s.Close(); Console.ReadLine(); } catch(System.Exceptione) { Console.WriteLine(e.ToString()); Console.ReadLine(); } return0; }//Main函数结束 }//Class结束 }//免费精选名字大全空间结束
上述就是C#学习教程:C#使用ADO.Net部件来访问Access数据库的方法分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/906800.html