新手求助c#连接access数据库的问题
连数据库总是提示“至少一个参数没有被指定值”
string s = textbox1.text;
string strSQL = "insert into test(test) values (s);";//s换成具体的字符串就没问题了,但不能直接用s不知道怎么回 事。
ExecuteAccessNonQuery(strSQL);
就这几句上有问题,
当把sql语句中的s换成比如"asdasd"等等的字符串时就没问题。
但直接用s就报错。
我也不知道哪里有问题,求解决。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace 疾控中心业务处理系统.流行病监测模块
{
public partial class freeCureIn : Form
{
public freeCureIn()
{
InitializeComponent();
}
public static void ExecuteAccessNonQuery(string strSQL)
{
string ACCESS_CONN_STRING = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= Database3.accdb";
OleDbConnection conn = new OleDbConnection(ACCESS_CONN_STRING);
conn.Open();
OleDbCommand cmd = new OleDbCommand(strSQL, conn);
cmd.CommandType = CommandType.Text;
using (OleDbTransaction trans = conn.BeginTransaction())
{
cmd.Transaction = trans;
try
{
cmd.ExecuteNonQuery();
trans.Commit();
}
catch
{
trans.Rollback();
throw;
}
finally
{
conn.Close();
}
}
}
/*
就下面几行有问题啊
*/
private void button1_Click(object sender, EventArgs e)
{
string s = textBox1.Text;
MessageBox.Show(s);
string strSQL = "insert into test(test) values (s);";
ExecuteAccessNonQuery(strSQL);
}
}
}