【发布时间】:2017-04-08 03:57:52
【问题描述】:
我用谷歌搜索了半天如何设置我的数据库的路径,所以如果我把它放在另一台计算机上它就可以了。我会一直在谷歌上搜索,但我真的需要非常快的答案......我必须在几个小时内用它来参加比赛。
string path = Path.Combine(Application.StartupPath, "Database1.mdf");
SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=" + path + ";");
conn.Open();
SqlCommand command = new SqlCommand("SELECT NAME FROM DATA", conn);
SqlDataReader reader = command.ExecuteReader();
while(reader.Read())
{
string text = reader.GetString(0);
MessageBox.Show(text);
}
SqlCommand c = new SqlCommand("INSERT INTO DATA (id, name) VALUES(i, v)", conn);
c.Parameters.AddWithValue("@i", 1);
c.Parameters.AddWithValue("@v", "Jack");
c.ExecuteNonQuery();
conn.Dispose();
此代码适用于选择,但不适用于插入。然后我将路径硬编码为:
String s = @"C:\Users\Radu\Documents\Visual Studio 2013\Projects\WindowsFormsApplication7\WindowsFormsApplication7\Database1.mdf";
它适用于两者,所以不是 SQL 语句出错。
所以我的问题是:我应该将路径放在我的SqlConnection 对象中,以便当他们在我的竞争对手上获得我的源代码并在另一台电脑上测试它时它会起作用。
【问题讨论】:
-
目标 PC 必须具有您正在运行并用作连接字符串的 SQL Server 版本。您确定目标 PC 正在运行 LocalDB?
标签: c# sql-server database