c#插入数据库数据类型不匹配错误

问题描述 投票:0回答:1

我想要一个应用程序,它将使我想起我定期写的内容。

我们将特定的日期添加到最后一天。像这样:

第一天(21.04.2020)+ 1天= 第一提醒(22.04.2020),第一提醒 + 3天= 第二提醒(25.04.2020)

希望您能理解,我的句号是“ 1,3,7,30,90,180,90”]

我的桌子enter image description here

这里是错误:System.Data.OleDb.OleDbException:'条件表达式中的数据类型不匹配。'

我的C#代码:

con = new OleDbConnection(ConnectionParameter);
        cmd = new OleDbCommand();
        con.Open();
        cmd.Connection = con;
        cmd.CommandText = "Insert into remember (subject,dateone,datetwo,datethree,datefour,datefive,datesix,dateseven,dateeight) values (@subject,@one,@two,@three,@four,@five,@six,@seven,@eight)";

        cmd.Parameters.AddWithValue("@subject", Convert.ToString(richTextBox3.Text));
        cmd.Parameters.AddWithValue("@one", Convert.ToDateTime(dateTimePicker1.Value));
        DateTime date2 = dateTimePicker1.Value.AddDays(1); 
        cmd.Parameters.AddWithValue("@two", date2);
        DateTime date3 = date2.AddDays(3);
        cmd.Parameters.AddWithValue("@three", date3);
        DateTime date4 = date3.AddDays(7);
        cmd.Parameters.AddWithValue("@four", date4);
        DateTime date5 = date4.AddDays(30);
        cmd.Parameters.AddWithValue("@five", date5);
        DateTime date6 = date5.AddDays(90);
        cmd.Parameters.AddWithValue("@six", date6);
        DateTime date7 = date6.AddDays(180);
        cmd.Parameters.AddWithValue("@seven", date7);
        DateTime date8 = date7.AddDays(90);
        cmd.Parameters.AddWithValue("@eight", date8);

        cmd.ExecuteNonQuery();
        con.Close();
c# database access
1个回答
1
投票

好,我解决了这个问题,我的最后一个代码块

con = new OleDbConnection(ConnectionParameter);
            cmd = new OleDbCommand();
            con.Open();
            cmd.Connection = con;
            cmd.CommandText = "Insert into remember (subject,dateone,datetwo,datethree,datefour,datefive,datesix,dateseven,dateeight) values (@subject,@one,@two,@three,@four,@five,@six,@seven,@eight)";

            cmd.Parameters.AddWithValue("@subject", Convert.ToString(richTextBox3.Text));
            cmd.Parameters.AddWithValue("@one", dateTimePicker1.Value.Date);
            DateTime date2 = dateTimePicker1.Value.AddDays(1); 
            cmd.Parameters.AddWithValue("@two", date2.Date);
            DateTime date3 = date2.AddDays(3);
            cmd.Parameters.AddWithValue("@three", date3.Date);
            DateTime date4 = date3.AddDays(7);
            cmd.Parameters.AddWithValue("@four", date4.Date);
            DateTime date5 = date4.AddDays(30);
            cmd.Parameters.AddWithValue("@five", date5.Date);
            DateTime date6 = date5.AddDays(90);
            cmd.Parameters.AddWithValue("@six", date6.Date);
            DateTime date7 = date6.AddDays(180);
            cmd.Parameters.AddWithValue("@seven", date7.Date);
            DateTime date8 = date7.AddDays(90);
            cmd.Parameters.AddWithValue("@eight", date8.Date);

            cmd.ExecuteNonQuery();
            con.Close();
© www.soinside.com 2019 - 2024. All rights reserved.