我有一个表单内建的webmatrix,将在用户指定的数据库内更新数据。
我希望用户将他们的数据库名称插入到表单中,并根据用户提交打开Database.Open("SQLServerConnectionString");
。
如果不可能,是否有一种方法可以简单地将用户指定的数据库名称包含在下面的SQL查询中?下面是我的示例:
var db = Database.Open("SQLServerConnectionString");
var selectQueryString = "SELECT donor_id,first_name,last_name FROM SUPPORT.dpo.dp WHERE donor_id=@0";
我希望在FROM子句中的静态"支持"数据库根据用户输入动态更新。任何帮助都太好了。
您是使用。mdf文件还是实际的数据库连接字符串?如果连接字符串,您可以使用OpenConnectionString
方法并传递自定义连接字符串,而不是使用web.config中的what。
http://msdn.microsoft.com/en-us/library/gg569301 (v = VS.99) . aspx
像这样的东西可能会工作:
@{
var databaseName = Request["databaseName"]; //load from request
var connectionString = string.Format("Data Source=.\SQLExpress;Initial Catalog={0};Integrated Security=True", databaseName);
var providerName = "System.Data.SqlClient";
var db = Database.OpenConnectionString(connectionString, providerName);
var selectQueryString = "SELECT * FROM Product ORDER BY Name";
}
你可以直接去掉SUPPORT。前缀,因为select
语句不需要