【发布时间】:2011-02-23 01:29:45
【问题描述】:
我有一个 C# Windows 窗体应用程序。我按下一个按钮,它应该创建一个表并插入一个值(int)。 我将初始数据库创建为服务数据库(添加新项目 > 数据 > 服务数据库)。
按钮的代码是(输出如下):
private void button1_Click(object sender, EventArgs e)
{
SqlConnection thisConnection = new SqlConnection(Properties.Settings.Default.Database1ConnectionString);
SqlCommand nonqueryCommand = thisConnection.CreateCommand();
try
{
thisConnection.Open();
nonqueryCommand.CommandText = "CREATE TABLE MyTable1 (intColumn int)";
Console.WriteLine(nonqueryCommand.CommandText);
Console.WriteLine("Number of Rows Affected is: {0}", nonqueryCommand.ExecuteNonQuery());
nonqueryCommand.CommandText = "INSERT INTO MyTable1 VALUES (99)";
Console.WriteLine(nonqueryCommand.CommandText);
Console.WriteLine("Number of Rows Affected is: {0}",
nonqueryCommand.ExecuteNonQuery());
}
catch (SqlException ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
thisConnection.Close(); // close connection
Console.WriteLine("Connection Closed.");
}
}
输出: 创建表 MyTable1 (intColumn int) 受影响的行数是:-1 插入 MyTable1 值 (99) 受影响的行数是:1 连接已关闭。
即使我将其关闭并重新连接,也没有其他表出现在服务器资源管理器上。
如果我按下按钮使其再次发出相同的声音,我会得到:
System.Data.SqlClient.SqlException (0x80131904): There is already an object named 'MyTable1' in the database.
但服务器资源管理器上仍然没有任何内容。
【问题讨论】:
-
你大喊大叫有什么原因吗?
标签: c# sql-server visual-studio-2010