预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共53页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

c#操作Access(上) 看到CSDN上不断兄弟姐妹提问关于c#操作Access的问题,于是本人利用闲暇将c#操作Access的方法加以总结,主要解决的问题有:创建mdb创建table读取table内容查询table中的内容向table中插入数据删除table中的记录向table中插入照片读取table中的照片等。另:本人水平有限,不当之处还请斧正。废话少说,开始正题。 文介绍C#访问操作Access数据库的基础知识,并提供一个相关的例程。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。主要知识点如下:usingSystem.Data.OleDb;usingSystem.Data;连接字符串:StringconnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=product.mdb";建立连接:OleDbConnectionconnection=newOleDbConnection(connectionString);使用OleDbCommand类来执行Sql语句:OleDbCommandcmd=newOleDbCommand(sql,connection);connection.Open();cmd.ExecuteNonQuery(); 1.创建mdb库,例程如下:需要注意的是:参数mdbPath是mdb的完整路径(不包含表的名称)。例如:D:\\test.mdb viewplaincopytoclipboardprint?//创建mdbpublicstaticboolCreateMDBDataBase(stringmdbPath){try{ADOX.CatalogClasscat=newADOX.CatalogClass();cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+mdbPath+";");cat=null;returntrue;}catch{returnfalse;}}//创建mdbpublicstaticboolCreateMDBDataBase(stringmdbPath){try{ADOX.CatalogClasscat=newADOX.CatalogClass();cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+mdbPath+";");cat=null;returntrue;}catch{returnfalse;}} 2.创建具体的表,例程如下:通常一个mdb的可以包含n个表。下面的程序主要是创建一个table。viewplaincopytoclipboardprint?//新建mdb的表//mdbHead是一个ArrayList,存储的是table表中的具体列名。publicstaticboolCreateMDBTable(stringmdbPath,stringtableName,ArrayListmdbHead){try{ADOX.CatalogClasscat=newADOX.CatalogClass();stringsAccessConnection=@"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+mdbPath;ADODB.Connectioncn=newADODB.Connection();cn.Open(sAccessConnection,null,null,-1);cat.ActiveConnection=cn;//新建一个表ADOX.TableClasstbl=newADOX.TableClass();tbl.ParentCatalog=cat;tbl.Name=tableName;intsize=mdbHead.Count;for(inti=0;i<size;i++){//增加一个文本字段ADOX.ColumnClasscol2=newADOX.ColumnClass();col2.ParentCatalog=cat;col2.Name=mdbHead[i].ToString();//列的名称col2.Properties["JetOLEDB:AllowZeroLength"].Value=false;tbl.Columns.Append(col2,ADOX.DataTypeEnum.adVarWChar,500);}cat.Tables.Append(tbl);//这句把表加入数据库(非常重要)tbl=null;cat=null;cn.Close(