2012-10-01 82 views
2

我试图把一个代码来创建从我的C#代码(asp.net网站)一个数据库。从C#创建SQL Server数据库 - 使用参数

这是我的代码:

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

myCommand.ExecuteNonQuery(); 
nn.Close(); 

很好,它不工作。它给我一个错误:

incorrect syntax near '@dbname'

但是。如果我不使用参数,人们可以对我的数据库注入SQL。你有什么想法如何使用任何东西,从文本框中获取数据库名称。那人不能SQL注入我的数据库?

回答

4

不能使用CREATE DATABASE参数或其他DDL命令。

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

+0

你能给我一个例子吗? –

+1

是。见链接.. – podiluska

+0

我看到该链接,但我不能什么都不懂,你有一个代码示例? –

相关问题