您当前位置: 拓展知识> 使用ADOX创建Access数据库和表

使用ADOX创建Access数据库和表

发布时间:2016-09-05 10:00 浏览次数:6341    
字体大小 默认
  • 默认
  • 13pt
  • 14pt
  • 15pt
  • 16pt
  • 17pt
  • 18pt
  • 19pt
  • 20pt
  • 21pt
  • 22pt
  • 23pt
  • 24pt
  • 25pt
字体颜色

默认

  • 默认
背景颜色

默认

  • 默认

 

使用ADOX创建Access数据库和表

 

using System;

using ADOX;

 

namespace WebPortal

{

/// <summary>

/// CreateAccessDB 的摘要说明。

/// 对于不同版本的ADO,需要添加不同的引用

  /// 请添加引用Microsoft ADO Ext. 2.7 for DDL and Security

  /// 请添加引用Microsoft ADO Ext. 2.8 for DDL and Security

/// </summary>

public class CreateAccessDB : System.Web.UI.Page

{

    private void Page_Load(object sender, System.EventArgs e)

    {

      //为了方便测试,数据库名字采用比较随机的名字,以防止添加不成功时还需要重新启动IIS来删除数据库。

      string dbName = "D:\\NewMDB"+DateTime.Now.Millisecond.ToString()+".mdb";

      ADOX.CatalogClass cat = new ADOX.CatalogClass();

      cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dbName +";");

      Response.Write("数据库:" + dbName + "已经创建成功!");

      ADOX.TableClass tbl = new ADOX.TableClass();

      tbl.ParentCatalog = cat;

      tbl.Name="MyTable";

 

      //增加一个自动增长的字段

      ADOX.ColumnClass col = new ADOX.ColumnClass();

      col.ParentCatalog = cat;

      col.Type=ADOX.DataTypeEnum.adInteger; // 必须先设置字段类型

      col.Name = "id";

      col.Properties["Jet OLEDB:Allow Zero Length"].Value= false;

      col.Properties["AutoIncrement"].Value= true;

      tbl.Columns.Append (col,ADOX.DataTypeEnum.adInteger,0);

 

      //增加一个文本字段

      ADOX.ColumnClass col2 = new ADOX.ColumnClass();

      col2.ParentCatalog = cat;

      col2.Name = "Description";

      col2.Properties["Jet OLEDB:Allow Zero Length"].Value= false;

      tbl.Columns.Append (col2,ADOX.DataTypeEnum.adVarChar,25);

 

      //设置主键

      tbl.Keys.Append("PrimaryKey",ADOX.KeyTypeEnum.adKeyPrimary,"id","","");

      cat.Tables.Append (tbl);

 

      Response.Write("<br>数据库表:" + tbl.Name + "已经创建成功!");

      tbl=null;

      cat = null;

    }

 

    #region Web 窗体设计器生成的代码

    override protected void OnInit(EventArgs e)

    {

      //

      // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。

      //

      InitializeComponent();

      base.OnInit(e);

    }

 

    /// <summary>

    /// 设计器支持所需的方法 - 不要使用代码编辑器修改

    /// 此方法的内容。

    /// </summary>

    private void InitializeComponent()

    {   

      this.Load += new System.EventHandler(this.Page_Load);

    }

    #endregion

  }

}

 

 

查看原文>> http://blog.csdn.net/u013664975/article/details/38116761

操作成功!此窗口3秒钟后自动关闭!
立即关闭