数据库用sqlY语句或者sqldmo建就可以了.表格是什么东西?

解决方案 »

  1.   

    建库:
    private void btnCreateDataBase_Click(object sender, System.EventArgs e)
    {
        SqlDataReader reader = null; 
        SqlConnection myConn = new SqlConnection("Server=serverName;uid=sa;pwd=;database=");    SqlCommand myCommand = new SqlCommand("CREATE DATABASE test ON PRIMARY"
    +"(Name=test_data,filename = 'C:\\myDatabase\\test_data.mdf',size=3,"
    +"maxsize=5,filegrowth=10%)log on"
    +"(name=test_log,filename='C:\\myDatabase\\test_log.ldf',size=3,"
    +"maxsize=20,filegrowth=1)",myConn);    try
        {
            myConn.Open();
            reader = myCommand.ExecuteReader();
        }
        catch (Exception e)
        {
            Console.Write(e.ToString());
        }
        finally
        {
            if (reader != null)
                reader.Close();
            if (myConn.State == ConnectionState.Open)
                myConn.Close();
         }
    }
      

  2.   

    再看看这个:
    http://www.c-sharpcorner.com/Code/2002/Mar/CreatingDBProgrammaticallyMCB.asp
      

  3.   

    给我发个邮件,然后我给你发。[email protected]
      

  4.   

    dahuzizyd,你好我按照你的代码运行程序,可是出错了,提示说:"设备激活错误.物理文件名'c:\database\test_data.mdf'可能有误,然后数据库也没有建起来.这是怎么回事呢?
      

  5.   

    呵呵,我知道原因了,因为它不会自己创建c:\database这个目录,所以出错,建了这个目录以后就成功了,可是创建数据库文件时一定要用绝对路径吗?程序运行时又不一定保证那个路径存在,有没有用相对路径的方法呢,比如就在SQL数据库的安装目录下??
      

  6.   

    可以在程序同一个文件夹下创建。只要不加路径就行了。比如把上面的 C:\\myDatabase\\test_data.mdf  改为 test_data.mdf
      

  7.   

    不行啊,如果不假如绝对路径,会出错,提示:Server: Msg 5105, Level 16, State 2, Line 1
    设备激活错误。物理文件名 'test.mdf' 可能有误。
    Server: Msg 1802, Level 16, State 1, Line 1
    CREATE DATABASE 失败。未能创建所列出的某些文件名。请检查前面的错误信息。加上路径名称就正常了.....
      

  8.   

    不愿意指定路径,你就用server.mappath("/sqlData/1.mdf")来指这下啊.这样他绝不会乱建数据库了.只会在web根目录下建.不过你最好很判断是否有这个目录,如果没有这个目录很建好目录.当然用程序创建目录也是可行的.
    就是建立数据库文件的时候不想指定数据库的路径,因为各机器的系统不一样,目录也不一样,
    又不愿意指定c:\,d:\这样的绝对路径!