C# 无法更改数据库

C# 无法更改数据库,c#,ado.net,C#,Ado.net,大家好 写一个项目,遇到一个问题 代码: private-SqlConnection-scon; 专用SqlCommand-scom; 字符串解除连接= “数据源=“+Environment.MachineName+@”\SQLEXPRESS;”+ “集成安全性=真;”+ “数据库=dbTrash”; 字符串连接= “数据源=“+Environment.MachineName+@”\SQLEXPRESS;”+ “集成安全=SSPI;”+ “数据库=主机”; /// ///构造函数,正在尝试连接

大家好 写一个项目,遇到一个问题 代码:

private-SqlConnection-scon;
专用SqlCommand-scom;
字符串解除连接=
“数据源=“+Environment.MachineName+@”\SQLEXPRESS;”+
“集成安全性=真;”+
“数据库=dbTrash”;
字符串连接=
“数据源=“+Environment.MachineName+@”\SQLEXPRESS;”+
“集成安全=SSPI;”+
“数据库=主机”;
/// 
///构造函数,正在尝试连接到数据库
/// 
公共数据库()
{
scon=新的SqlConnection(defConnection);
尝试
{
scon.Open();
}
捕获(例外情况除外)
{
MessageBox.Show(“ааазаааааааааааааааа+
“БзззаааБа,ааааааааааПааааааааааа;
尝试
{
//dbTrash已存在,正在尝试连接到db master,成功!
SqlConnection myConn=新的SqlConnection(altConnection);
//创建我的db-dbTrash
SqlCommand myCommand=新的SqlCommand(createDB,myConn);
尝试
{
myConn.Open();
myCommand.ExecuteOnQuery();
}
catch(System.x异常)
{
MessageBox.Show(x.消息,“Сбббббб”);
}
最后
{
if(myConn.State==ConnectionState.Open)
{
myConn.Close();
}
}
}
捕获(例外e)
{
MessageBox.Show(信息盒显示):“e.信息”,СззааааааааааааааБаПгга;
}
//正在尝试连接到dbTrash
//什么都没有。错误-无法连接到数据库,因为存在数据库垃圾!!!!!!!!!!!!
SqlConnection scon1=新的SqlConnection(defConnection);
//在DB中创建表,但不创建'
SqlCommand scom1=新的SqlCommand(createTables,scon1);
scon1.Open();
}
}
const string createDB=“create database dbTrash”;
/// 
/// 
/// 
const string createTables=“创建表[dbo].[Types](“+
id int不为空+
类型nvarchar(15)不为空+
“主键(id)”+
“)GO”+
“创建表文件(”+
id int不为空+
nameOfFile nvarchar(50)不为空+
fileSizeInByte int不为空+
fileSize float不为空+
typeId int不为空+
“标签nvarchar(200),”+
文件路径nvarchar(60)唯一不为空+
“xml nvarchar(300),”+
主键(id)+
“外键(类型id)引用类型(id)”+
“;”去“;

如何在dbTrash中编写表,如果(阅读代码)

问题可能在于命令的顺序

       SqlConnection scon1 = new SqlConnection(defConnection); 
        // create tables in DB but nothin' 
        SqlCommand scom1 = new SqlCommand(createTables, scon1); 
        scon1.Open(); 

在对该连接运行命令之前,是否应该打开该连接?

是否正在创建dbTrash数据库

另外,确保GO语句各在其各自的行上

同时调用
ExecuteNonQuery()

.....
// AND NOTHING. ERROR - CAN'T CONNECT TO DB, 'CAUSE EXIST dbTrash!!!!!!!!!!!!
SqlConnection scon1 = new SqlConnection(defConnection);
// create tables in DB but nothin'
SqlCommand scom1 = new SqlCommand(createTables, scon1);
scon1.Open();
scom1.ExecuteNonQuery(); //call this

为什么要在catch()中添加代码来打开数据库连接,而该连接最初无法打开?!不必道歉;问题不是启动程序中的“狗屎”,尝试连接到DB(dbTrash)。如果未连接,我将连接到主数据库(系统DB MSSQL)并创建我的数据库。然后,我无法连接到将在其中创建表并使用Shiraz Bhaiji的数据库我希望将主数据库更改为dbtrash数据库(myCon.ChangeDatabase(“dbtrash”)不帮助)我在SQL Server Management express studio中检查dbtrash
.....
// AND NOTHING. ERROR - CAN'T CONNECT TO DB, 'CAUSE EXIST dbTrash!!!!!!!!!!!!
SqlConnection scon1 = new SqlConnection(defConnection);
// create tables in DB but nothin'
SqlCommand scom1 = new SqlCommand(createTables, scon1);
scon1.Open();
scom1.ExecuteNonQuery(); //call this