C#操作Access之创建表是如何实现的呢?首先我们来看看基本的知识:本文C#操作Access数据库的基础知识,并提供一个相关的实例。C#的ADO.NET还不能通过编程方式创建全新的ACCESS(MDB)数据库,所以还只能使用ADOX这个来自COM的链接库来操作。
C#操作Access主要知识点如下:
using System.Data.OleDb;
using System.Data;
- 1.
- 2.
- 3.
C#操作Access连接字符串:
String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=product.mdb";
- 1.
- 2.
- 3.
C#操作Access建立连接:
OleDbConnection connection = new OleDbConnection(connectionString);
- 1.
C#操作Access使用OleDbCommand类来执行Sql语句:
OleDbCommand cmd = new OleDbCommand(sql, connection);
connection.Open();
cmd.ExecuteNonQuery();
- 1.
- 2.
- 3.
- 4.
- 5.
C#操作Access之创建表,例程如下:
通常一个mdb的可以包含n个表。下面的程序主要是创建一个table。
//新建mdb的表,C#操作Access之创建表
//mdbHead是一个ArrayList,存储的是table表中的具体列名。
public static bool CreateMDBTable(
string mdbPath,string tableName, ArrayList mdbHead)
{
try
{
ADOX.CatalogClass cat = new ADOX.CatalogClass();
string sAccessConnection = @"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=" + mdbPath;
ADODB.Connection cn = new ADODB.Connection();
cn.Open(sAccessConnection, null, null, -1);
cat.ActiveConnection = cn;
//新建一个表,C#操作Access之创建表
ADOX.TableClass tbl = new ADOX.TableClass();
tbl.ParentCatalog = cat;
tbl.Name = tableName;
int size = mdbHead.Count;
for (int i = 0; i < size; i++)
{
//增加一个文本字段
ADOX.ColumnClass col2 = new ADOX.ColumnClass();
col2.ParentCatalog = cat;
col2.Name = mdbHead[i].ToString();//列的名称
col2.Properties["Jet OLEDB:Allow Zero Length"].Value = false;
tbl.Columns.Append(col2, ADOX.DataTypeEnum.adVarWChar, 500);
}
cat.Tables.Append(tbl);
//这句把表加入数据库(非常重要) ,C#操作Access之创建表
tbl = null;
cat = null;
cn.Close();
return true;
}
catch { return false; }
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
C#操作Access之创建表的基本内容就向你介绍到这里,希望对你了解和学习C#操作Access之创建表有所帮助。
【编辑推荐】