C#动态创建Access数据库文件代码
string fileName="D:\\f.mdb";
//创建数据库
public void CreateData(string fileName)
{
string conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName;
//创建数据库
ADOX.Catalog catalog = new Catalog();
catalog.Create(conn);
//连接数据库
ADODB.Connection cn = new ADODB.Connection();
cn.Open(conn, null, null, -1);
catalog.ActiveConnection = cn;
//新建表
ADOX.Table table = new ADOX.Table();
table.Name = "AdPlayList";
ADOX.Column column = new ADOX.Column();
column.ParentCatalog = catalog;
column.Type = ADOX.DataTypeEnum.adInteger; // 必须先设置字段类型
column.Name = "ID";
column.DefinedSize = 9;
column.Properties["AutoIncrement"].Value = true;
table.Columns.Append(column, DataTypeEnum.adInteger, 0);
//设置主键
table.Keys.Append("PrimaryKey", ADOX.KeyTypeEnum.adKeyPrimary, "ID", "", "");
table.Columns.Append("FileName", DataTypeEnum.adVarWChar, 50);
table.Columns.Append("FileDate", DataTypeEnum.adDate, 0);
table.Columns.Append("FileSize", DataTypeEnum.adInteger, 9);
table.Columns.Append("OrderID", DataTypeEnum.adInteger, 9);
table.Columns.Append("Sha1", DataTypeEnum.adVarWChar, 50);
catalog.Tables.Append(table);
//此处一定要关闭连接,否则添加数据时候会出错
table = null;
catalog = null;
Application.DoEvents();
cn.Close();
}
==================================================================================
//添加数据到表中
public void AddData(string fileName)
{
string strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Persist Security Info=False";
OleDbConnection conn = new OleDbConnection(strConnection);
string strSql = "select * from AdPlayList";
OleDbDataAdapter da = new OleDbDataAdapter(strSql, conn);
DataSet ds = new DataSet();
conn.Open();
da.Fill(ds, "AdPlayList");
DataRow dr = ds.Tables["AdPlayList"].NewRow();
dr["FileName"] = "A.wmv";
dr["FileDate"] = DateTime.Now.ToShortDateString();
dr["FileSize"] = 25;
dr["OrderID"] = 1;
dr["Sha1"] = "2q34lkadsflaoiulkj34";
ds.Tables["AdPlayList"].Rows.Add(dr);
OleDbCommandBuilder cb = new OleDbCommandBuilder(da);
da.Update(ds, "AdPlayList");
ds.AcceptChanges();
da.Dispose();
conn.Dispose();
conn.Close();
}
==============================================================
//在dataGridView1中显示表中数据
private void ViewData(string fileName)
{
string strConnection;
strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";Persist Security Info=False";
OleDbConnection conn = new OleDbConnection(strConnection);
string strSql = "select * From AdPlayList";
OleDbDataAdapter da = new OleDbDataAdapter(strSql, conn);
DataSet ds = new DataSet();
conn.Open();
da.Fill(ds, "AdPlayList");
dataGridView1.DataSource = ds.Tables[0];
da.Dispose();
conn.Dispose();
conn.Close();
}

浙公网安备 33010602011771号