本帖最后由 zixuanzhilei 于 2010-09-26 12:55:25 编辑

解决方案 »

  1.   

    OleDbParameter[] para = new OleDbParameter[]
                    {
                        new OleDbParameter("@B_Author",OleDbType.nvarchar,100),
                        new OleDbParameter("@B_Title",OleDbType.nvarchar,100),
                        new OleDbParameter("@B_ClickNum",OleDbType.Int),
                        new OleDbParameter("@B_CreatTime",OleDbType.DateTime),
                    };
                para[0].Value = info.B_Author;
                para[1].Value = info.B_Title;
                para[2].Value = info.B_ClickNum;
                para[3].Value = info.B_CreatTime;
    这样试看看啊
      

  2.   

    把字段写上
    String sql = "INSERT INTO Board
    (author ,title,clicknum````````)
     VALUES(@B_Author,@B_Title,@B_ClickNum,@B_CreatTime)";
      

  3.   

    在数据库执行这一句试一试……
    INSERT INTO Board VALUES(@B_Author,@B_Title,@B_ClickNum,@B_CreatTime)
      

  4.   

    这个,回LS,请问@B_CreatTime这里怎么写?如果我写yyyy年MM月DD日 HH小时之类的格式,他一直说我格式出错
      

  5.   

    但是我一旦往里面直接插数据,就会变成XXXXXXXX的
    ==?什么意思?
      

  6.   

    我大概找到问题了,如果我用DateTime的加上时分秒的格式就会报错
    如果是年月日就不会....
    我汗了
      

  7.   


    就是access数据库会显示成XXXXXXXXXX的东西
      

  8.   

    h:nn  是啥????  有n吗??你把格式全部清空   选择日期时间即可
      

  9.   

    Access 的日期类型是 OleDbType.DBTimeStamp 
    而且.net 的Datetime 类型不能直接赋值给OleDbParameter
    要info.B_CreatTime.ToString("yyyy-MM-dd HH:mm:ss");
    只能用字符串的形式。
      

  10.   

    access不比sqlserver,必需指定字段
    insert into table(col1,col2) values(@value1,@value2)
      

  11.   

    谢谢楼上的各位,我还是用DateTime.Today来用了,不用时分秒了,太操蛋了!
    改String麻烦,直接DateTime的年月日格式可用