简体   繁体   English

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

[英]Create SQL Server database from C# - using parameters

I am trying to put up a code to create a databases from my C# code (asp.net website). 我正在尝试编写代码以从我的C#代码(asp.net网站)创建数据库。

This is my code: 这是我的代码:

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

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

well, its not working. 好吧,它不起作用。 its giving me an error: 它给我一个错误:

incorrect syntax near '@dbname' '@dbname'附近的语法不正确

BUT. 但。 if I won't use parameters, people can SQL inj to my database. 如果我不使用参数,人们可以使用SQL注入我的数据库。 do you have any idea how can use anything, to get the database name from a textbox. 您是否知道如何使用任何东西来从文本框中获取数据库名称? and that people can't SQL inj me database? 而且人们无法通过SQL注入数据库?

You can't use parameters in CREATE DATABASE or other DDL commands. 您不能在CREATE DATABASE或其他DDL命令中使用参数。

I'd suggest using SQL Server Management Objects instead of SQL 我建议使用SQL Server管理对象而不是SQL

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM