好吧,我已经让这个程序在 SQL db 中插入新值,通过从组合框中的不同表之间进行选择。我需要更改 sql 查询,通过它我可以为组合框中的每个表单独使用插入命令......我需要帮助以粗体显示...
namespace combo
{
public partial class Form1 : Form
{
List lstNewRows = new List();
public Form1()
{
InitializeComponent();
}
private void PopulateComboBox()
{
try
{
List _items = new List();
_items.Add("select * from lol");
_items.Add("select * from datejoin");
comboBox1.DataSource = _items;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void Form1_Load(object sender, EventArgs e)
{
PopulateComboBox();
}
private void PopulateGridView(string connString, string sqlQuery)
{
String strconnetcion = connString;
SqlConnection con = new SqlConnection(strconnetcion);
try
{
con.Open();
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = con;
sqlCmd.CommandType = CommandType.Text;
sqlCmd.CommandText = sqlQuery;
SqlDataAdapter sqlDataAdap = new SqlDataAdapter(sqlCmd);
DataTable dtRecord = new DataTable();
sqlDataAdap.Fill(dtRecord);
dataGridView1.DataSource = dtRecord;
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedValue != null)
{
PopulateGridView(textBox1.Text, comboBox1.SelectedValue.ToString());
}
}
private void InsertInfo()
{
string connectionString = null;
SqlConnection connection;
SqlDataAdapter adapter = new SqlDataAdapter();
string value1 = "";
string value2 = "";
connectionString = @"Data Source=HP\SQLEXPRESS;database=MK;Integrated Security=true";
connection = new SqlConnection(connectionString);
foreach (int rowIndex in lstNewRows)
{
if (dataGridView1.Rows[rowIndex].Cells[0].Value != null && dataGridView1.Rows[rowIndex].Cells[1].Value != null)
{
value1 = dataGridView1.Rows[rowIndex].Cells[0].Value.ToString();
value2 = dataGridView1.Rows[rowIndex].Cells[1].Value.ToString();
***string sql = "insert into lol (name,marks) values('" + value1 + "','" + value2 + "')";***
try
{
connection.Open();
adapter.InsertCommand = new SqlCommand(sql, connection);
adapter.InsertCommand.ExecuteNonQuery();
MessageBox.Show("Row inserted !! ");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}
}
private void button1_Click(object sender, EventArgs e)
{
InsertInfo();
}
private void dataGridView1_DefaultValuesNeeded(object sender, DataGridViewRowEventArgs e)
{
lstNewRows.Add(e.Row.Index);
}
}
}