数据库,SMO,C#创建失败

时间:2011-10-16 08:42:22

标签: c# .net sql-server-2005 smo

我正在尝试使用SMO(c#)以编程方式创建新数据库。

我正在研究SQL Server 2005.这是代码:

ServerConnection connection = new ServerConnection(serverName, userName, password);
Server sqlServer = new Server(connection);
Database newDB = new Database(sqlServer, databaseName);
newDB.Create();

我得到例外:

  

“为数据库创建失败。”

可能是什么问题,如何创建新数据库? 感谢...

1 个答案:

答案 0 :(得分:3)

我试过这个:使用sysadmin用户,一切正常。对于“普通”用户,我会得到与您相同的错误。

试试这个:

ServerConnection connection = new ServerConnection(serverName, userName, password);
Server sqlServer = new Server(connection);
Database newDB = new Database(sqlServer, databaseName);

try
{
   newDB.Create();
} 
catch(Exception exc) 
{
   string msg1 = exc.Message;

   if(exc.InnerException != null)
   {
       string msg2 = exc.InnerException.Message;

       if(exc.InnerException.InnerException != null)
       {
           string msg3 = exc.InnerException.InnerExceptionMessage;
       }
   }
}

你看到msg2msg3 ??他们说什么???

在未经必要许可的情况下使用用户时,我的msg3 非常清楚

  

在数据库'master'中拒绝CREATE DATABASE权限。