小编Pyr*_*cer的帖子

OleDB INSERT命令错误

我有一个数据库(我使用MS ACCESS)我有这个插入代码,我可以读取数据但写入时出错,我按照说明但它不起作用这里是我的代码

OleDbConnection con = new OleDbConnection(@" provider=Microsoft.ace.Oledb.12.0; data source=\\sisc-erelim\4_Printing\VTDB\DB\VirginiTEADB2.accdb; Persist Security Info=False");

private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                OleDbCommand cmd = new OleDbCommand();
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = "INSERT INTO Accountstbl (Username, Password)" + "VALUES ('" + textBox1.Text + "','" + textBox2.Text + "')";
                cmd.Parameters.AddWithValue("@Username", textBox1.Text);
                cmd.Parameters.AddWithValue("@Password", textBox2.Text);
                cmd.Connection = con;
                con.Open();
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                textBox1.Text = ex.ToString();
            }
Run Code Online (Sandbox Code Playgroud)

我总是遇到这个错误,

System.Data.OleDb.OleDbException: Syntax error in INSERT INTO statement.
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
   at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, …
Run Code Online (Sandbox Code Playgroud)

c# sql oledb ms-access winforms

8
推荐指数
1
解决办法
9526
查看次数

StreamWriter用新文本替换行

是否有可能用新文本替换文本文件中的文本而不删除其他数据,这是我的示例代码,但它不起作用,我知道它有问题,但我无法弄清楚,谢谢,

private void button1_Click_1(object sender, EventArgs e)
{
    StreamReader sr = new StreamReader("test10101.txt");
    List<string> lines = new List<string>();
    while (!sr.EndOfStream)
        lines.Add(sr.ReadLine());
    output = Convert.ToInt32(textBox1.Text);
    newbal = Convert.ToInt32(lines[0]) - output;
    MessageBox.Show("Please get your cash....\n\nYour new balance is: $" + newbal);
    sr.Close();
    {
        string linetoreplace = lines[0];
        int newlinevalue = newbal;
        string contents = sr.ReadToEnd();

        StreamWriter sw = new StreamWriter("test10101.txt" + ".tmp");
        //contents = Regex.Replace(contents, linetoreplace, newlinevalue.ToString());
        contents = contents.Replace(linetoreplace, newlinevalue.ToString());
        sw.WriteLine(contents);
        sw.Close();

    }
Run Code Online (Sandbox Code Playgroud)

我想知道我是否使用正则表达式或直接替换线,

c# forms windows streamwriter

5
推荐指数
1
解决办法
3万
查看次数

Oledb更新命令

我制作了一个程序来保存和更新数据库中的数据,我可以保存和读取数据,也可以更新,但是问题是,我无法选择"ID"作为索引,这是我的示例代码"ID"用作索引,

cmd = new OleDbCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "UPDATE Records SET FirstName = @firstname, LastName = @lastname, Age = @age, Address = @address, Course = @course WHERE [ID] = @id";
cmd.Parameters.AddWithValue("@id", int.Parse(label7.Text));
cmd.Parameters.AddWithValue("@firstname", textBox1.Text);
cmd.Parameters.AddWithValue("@lastname", textBox2.Text);
cmd.Parameters.AddWithValue("@age", textBox3.Text);
cmd.Parameters.AddWithValue("@address", textBox4.Text);
cmd.Parameters.AddWithValue("@course", textBox5.Text);
cmd.Connection = cn;
cn.Open();
cmd.ExecuteNonQuery();
{
    MessageBox.Show("Update Success!");
    cn.Close();
}
Run Code Online (Sandbox Code Playgroud)

这里是我的作品更新代码,但该指数是"firstname"

cmd = new OleDbCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "UPDATE Records SET FirstName = @firstname, LastName = @lastname, Age …
Run Code Online (Sandbox Code Playgroud)

c# oledb

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×3

oledb ×2

forms ×1

ms-access ×1

sql ×1

streamwriter ×1

windows ×1

winforms ×1