首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

如何用ADO.NET创建ACCESS数据

2012-03-14 
怎么用ADO.NET创建ACCESS数据?用DAO方式的话,里面有一个WorkSpace.CreateDataBase函数可以创建数据库,但在

怎么用ADO.NET创建ACCESS数据?
用DAO方式的话,里面有一个WorkSpace.CreateDataBase函数可以创建数据库,但在ADO.NET中却没找到,郁闷啊......

[解决办法]
如果实在不行 就放一个空数据库在程序目录里作为模板,需要建库时把这个模板文件复制出一份来取个新名字就OK了。
[解决办法]
用ADO.NET创建access数据库
用这个标题并不合适。因为ADO.NET是不能创建Access数据库的-_-!! 如果是Sql Server就会好办得多。

在这里只是给出了一种妥协的方法,能够在使用ADO.NET的环境下连接COM达到目的。

准备工作:

1. 在Solution Explorer中,右击References节点,选择Add Reference。
2. 在Add Reference对话框中,点选COM选项卡,选择Microsoft ADO Ext. 2.7 for DDL and Security。点击Select按钮将其加入Selected Components框。然后点OK。

以下是code:

/// <summary>
/// Create database to current path where specified by dbName
/// </summary>
/// <param name= "dbName "> </param>
/// <returns> </returns>
public static OleDbConnection CreateDB(string dbName)
{
if(string.Empty == dbName)
{
throw new Exception();
}
if(!File.Exists(dbName))
{
Catalog cat = new Catalog();

//check whether the directory exist, otherwise create the directory
int path_end = dbName.LastIndexOf( "\\ ");
string dirPath = dbName.Substring(0, path_end);
if (!Directory.Exists(dirPath))
{
Directory.CreateDirectory(dirPath);
}

cat.Create(@ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + dbName + ";Jet OLEDB:Engine Type=5 ");
Table objTable = new Table();
objTable.Name = "Test_Table ";
objTable.Columns.Append( "Test_Field ", DataTypeEnum.adWChar, 10);
cat.Tables.Append(objTable);
objTable = null;
cat = null;
}
OleDbConnection conn = new OleDbConnection(@ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + dbName);
return conn;
}



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=932118

热点排行