使用 c# 在 ssms table 中插入数据
Insert Data in ssms table with c#
我对编程和 c#/ssms 还很陌生,我想将数据插入 table 我用 c# 中的程序在 ssms 中创建的。
所以这是我现在的代码。它以某种方式工作,但它不会将数据插入 ssms 中的 table。 "myConnection.Open();"上面的部分很好,剩下的就是了。
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
SqlCommand MyCommand = new SqlCommand("Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')");
myCommand.ExecuteNonQuery();
myConnection.Close();
希望你能帮助我,谢谢。
你没有执行这句话:
SqlCommand MyCommand = new SqlCommand("Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')");
因为您之前用不同的名称声明了变量:
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
为了工作,您首先需要声明 SQL 语句然后执行它:
string sqlStatement = "Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')";
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();
}
}
我认为它应该适用于此更改。另外,在不久的将来,我推荐你Entity Framework,它会对你的编程生涯有很大的帮助:
http://www.tutorialspoint.com/entity_framework/
此外,您应该避免使用此代码,您将要避免使用 SQL Injections,您可以这样做:
string sqlStatement = "Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES (@val1, @val2, @val3, @val4, @val5, @val6)";
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
myCommand.Parameters.Add(new SqlParameter("@val1", SqlDbType.VarChar, 200){Value = textBox1.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val2", SqlDbType.VarChar, 200){Value = textBox2.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val3", SqlDbType.VarChar, 200){Value = textBox3.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val4", SqlDbType.VarChar, 200){Value = textBox4.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val5", SqlDbType.VarChar, 200){Value = textBox5.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val6", SqlDbType.VarChar, 200){Value = textBox6.Text ?? (object) System.DBNull.Value});
myCommand.ExecuteNonQuery();
myConnection.Close();
}
}
我对编程和 c#/ssms 还很陌生,我想将数据插入 table 我用 c# 中的程序在 ssms 中创建的。 所以这是我现在的代码。它以某种方式工作,但它不会将数据插入 ssms 中的 table。 "myConnection.Open();"上面的部分很好,剩下的就是了。
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
SqlCommand MyCommand = new SqlCommand("Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')");
myCommand.ExecuteNonQuery();
myConnection.Close();
希望你能帮助我,谢谢。
你没有执行这句话:
SqlCommand MyCommand = new SqlCommand("Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')");
因为您之前用不同的名称声明了变量:
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
为了工作,您首先需要声明 SQL 语句然后执行它:
string sqlStatement = "Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '" + textBox6.Text + "')";
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
myCommand.ExecuteNonQuery();
myConnection.Close();
}
}
我认为它应该适用于此更改。另外,在不久的将来,我推荐你Entity Framework,它会对你的编程生涯有很大的帮助:
http://www.tutorialspoint.com/entity_framework/
此外,您应该避免使用此代码,您将要避免使用 SQL Injections,您可以这样做:
string sqlStatement = "Insert Into Artikel (Artikelnummer, Bezeichnung, Lieferant, Einkaufspreis, Verkaufspreis, Rabatt) VALUES (@val1, @val2, @val3, @val4, @val5, @val6)";
using (SqlConnection myConnection = new SqlConnection(conString))
{
using (SqlCommand myCommand = new SqlCommand(sqlStatement, myConnection))
{
myConnection.Open();
myCommand.Parameters.Add(new SqlParameter("@val1", SqlDbType.VarChar, 200){Value = textBox1.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val2", SqlDbType.VarChar, 200){Value = textBox2.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val3", SqlDbType.VarChar, 200){Value = textBox3.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val4", SqlDbType.VarChar, 200){Value = textBox4.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val5", SqlDbType.VarChar, 200){Value = textBox5.Text ?? (object) System.DBNull.Value});
myCommand.Parameters.Add(new SqlParameter("@val6", SqlDbType.VarChar, 200){Value = textBox6.Text ?? (object) System.DBNull.Value});
myCommand.ExecuteNonQuery();
myConnection.Close();
}
}