使用参数从C#创建SQL Server数据库

时间:2012-10-01 09:35:28

标签: c# asp.net sql sql-server

我正在尝试建立一个代码来从我的C#代码(asp.net网站)创建数据库。

这是我的代码:

SqlCommand myCommand = new SqlCommand("CREATE DATABASE @dbname", nn);
myCommand.Parameters.Add("dbname", dbname);

myCommand.ExecuteNonQuery();
nn.Close();
好吧,它不起作用。它给了我一个错误:

  

'@dbname'附近的语法不正确

BUT。如果我不使用参数,人们可以SQL注入我的数据库。你知道如何使用任何东西,从文本框中获取数据库名称。并且人们不能SQL注入数据库?

1 个答案:

答案 0 :(得分:4)

您无法在CREATE DATABASE或其他DDL命令中使用参数。

我建议使用SQL Server Management Objects而不是SQL