在C#中怎样动态地创建一个ACCESS数据库
假如要创建的数据库路经为:E:\库文件\mydatabase.mdb
           其中有一个表A:
                    字段:aCode   char(10) 为键
                         aDel    bool 
如果要创建SQLSERVER数据库又是怎样的呢?
请给出关键代码!

解决方案 »

  1.   

    连接数据库后,用下面语句执行
    string sql="CREATE TABLE tablename (aCode CHAR(10),aDel bool)";
      

  2.   

    是winform编程吧
    要是webform...
      

  3.   

    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 +";"); 
             MessageBox.Show ("数据库:" + 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);          MessageBox.Show ("数据库表:" + tbl.Name + "已经创建成功!");
             tbl=null;
             cat = null;
      

  4.   

    要运行这段代码,还要注意下面的两个步骤!
    一:在菜单的 项目--》添加引用---》COM 找到Microsoft ADO Ext. 2.7 for DDL and Security 添加上去(否则程序运行,会找不到ADOX的运行指令,对于不同版本的ADO,需要添加不同的引用,有的可能是2.6,2.8的
    )
    二:添上 using ADOX;
      

  5.   

    SQL SERVER 的就简单了, 直接 SA 连接,然后 CREATE DATABASE 就 OK 了