c#插入数据老是不成功
想往ACCESS数据库里添加数据,代码如下,能运行,但是结果就是不能插入到数据库里,请高手帮忙看下:
我建了一个公共类dbClass,其中有一个公共方法是专门用来连接数据库的
public class dbClass
{
public OleDbConnection myConnection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=db1.accdb");
}
按钮的代码如下:
private void button1_Click_1(object sender, EventArgs e)
{
if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "" || textBox4.Text == "" || textBox5.Text == "" || textBox6.Text == "")
{
MessageBox.Show("输入完整的学生信息", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
DataSet ds = new DataSet();
//OleDbDataAdapter da = new OleDbDataAdapter();
insert.myConnection.Open();
string sqls = "SELECT * FROM 书籍信息 WHERE 书籍编号='" + textBox1.Text.Trim() + "'";
OleDbDataAdapter da = new OleDbDataAdapter(sqls, insert.myConnection);
da.Fill(ds);
if (ds.Tables[0].Rows.Count > 1)
{
MessageBox.Show("该书籍编号已存在", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
if (MessageBox.Show("确认添加?", "信息提示", System.Windows.Forms.MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
{
string sql1, sql2, sql3;
sql1 = "INSERT INTO 书籍信息(书籍编号,书籍名称,出版社,作者,状态,所在位置)";
sql2 = "VALUES('" + textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "','" + textBox3.Text.Trim() + "','" + textBox4.Text.Trim() + "','" + textBox5.Text.Trim() + "','" + textBox6.Text.Trim() + "')";
sql3 = sql1 + sql2;
dbClass cons = new dbClass();
OleDbCommand cmd = new OleDbCommand();
cmd.CommandText = sql3;
try
{
//cons.Open();
cons.myConnection.Open();
cmd.ExecuteNonQuery();
}
catch { }
finally
{
cons.myConnection.Close();
cons.myConnection.Dispose();
cmd.Dispose();
}
MessageBox.Show("信息保存成功", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
string s = "SELECT * FROM 书籍信息";
OleDbDataAdapter da1 = new OleDbDataAdapter(s, insert.myConnection);
da1.Fill(ds);
if (ds.Tables[0].Rows.Count > 1)
{
dataGridView1.DataSource = ds.Tables[0];
}
}
}
}
}