当我想连接到SQL Server 2008数据库时,我遇到了这个错误。
ERROR:
System.InvalidOperationException:ExecuteNonQuery:Connection属性尚未初始化。
在System.Data.Sq1Client.Sq1Command.ValidateCommand(String method,Boolean async)
在System.Data.Sq1Client.Sq1Client.Sq1Client.Sq1Client.Sq1Client.Sq1上,System.Data.Sq1Client.Sq1,内部执行,执行完成,String methodName,布尔值sendToPipe,Int32超时,布局asyncWrite。 at WindowsFormsApplication2.Form1.create_Click(Object sender,EventArgs e)位于C:\ Users \ admin \ Documents \ Visual Studio 201CAProjects \ WindowsFormsApplicationaWindowsFormsApplicationaForm1.cs第127行
SqlCommand cmd = new SqlCommand();
cmd.CommandText="insert into dbo.Student_Record
(
ID,
Name,
[Father's CNIC],
[Father's Name],
CNIC
)
values
('BCSF11A003',
'Zargham Nazeer Malik',
'35202-2953923-3',
'Khalid Nazeer Malik',
'35202-2235390-5')";
cmd.ExecuteNonQuery();
con.Close();
}
答案 0 :(得分:0)
错误只是意味着您在为其分配连接之前尝试使用SqlCommand
。
请检查。如果您在此处包含代码部分,那么它将更有用。
答案 1 :(得分:0)
您没有为命令添加连接:
cmd.Connection = con;
答案 2 :(得分:0)
此代码应该可以解决您的问题:
using(SqlConnection con = new SqlConnection("CHANGE_THIS_TO_YOUR_CONNECTIONSTRING")){
SqlCommand cmd = con.CreateCommand();
cmd.CommandText="insert into dbo.Student_Record(ID,Name,[Father's CNIC],[Father's Name],CNIC) values ('BCSF11A003','Zargham Nazeer Malik','35202-2953923-3','Khalid Nazeer Malik','35202-2235390-5')";
cmd.ExecuteNonQuery();
}
您必须将CHANGE_THIS_TO_YOUR_CONNECTIONSTRING更改为连接字符串。 请参阅:https://www.connectionstrings.com/sql-server/了解如何找到正确的字符串。
答案 3 :(得分:0)
我会这样做,包括所有常用的最佳做法:
// define the query - you should use **parameters** to avoid SQL injection
string query = "insert into dbo.Student_Record(ID, Name, [Father's CNIC], [Father's Name], CNIC) values ('BCSF11A003', 'Zargham Nazeer Malik', '35202-2953923-3', 'Khalid Nazeer Malik', '35202-2235390-5');";
// define connection string - typically read from config
string connectionString = "";
// create connection and command objects, set the "conn" connection on the "cmd" object in the constructor
using (SqlConnection conn = new SqlConnection(connectionString))
using (SqlCommand cmd = new SqlCommand(query, conn))
{
// open connection, execute command, close connection
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}