asp.net 没法主要参数化升级ACCESS数据信息库的难题

public static void UpdateNews(int id , string title , string content , DateTime publishTime , string url )
 2 {
 3 using (OleDbConnection connection = SqlDataProvider.GetOleDbConnection())
 4 {
 5 string sqlStr =   UPDATE [News] SET [Title]=@Title, [Content]=@Content, [PublishTime]=@PublishTime, [Url]=@Url WHERE ID=@ID ;
 6
 7 mand = new OleDbCommand(sqlStr, connection);
 8
 9&mand.Parameters.Add( @ID , OleDbType.Integer).Value = id;
10
11&mand.Parameters.Add( @Title , OleDbType.Char).Value = title;
12 
13&mand.Parameters.Add( @Content , OleDbType.VarWChar).Value = content;
14 
15&mand.Parameters.Add( @PublishTime , OleDbType.DBDate).Value = publishTime;
16
17&mand.Parameters.Add( @Url , OleDbType.VarWChar).Value = url;
18
19 connection.Open();
20&mand.ExecuteNonQuery();
21 connection.Close();
22 }
23 }
试着了好长时间,发觉,mand里的主要参数编码序列一致才可以一切正常升级,也便是务必把  command.Parameters.Add( @ID , OleDbType.Integer).Value = id;
裁切到17行以后。才可以一切正常运作。
 1 public static void UpdateNews(int id , string title , string content , DateTime publishTime , string url )
 2 {
 3 using (OleDbConnection connection = SqlDataProvider.GetOleDbConnection())
 4 {
 5 string sqlStr =   UPDATE [News] SET [Title]=@Title, [Content]=@Content, [PublishTime]=@PublishTime, [Url]=@Url WHERE ID=@ID ;
 6
 7 mand = new OleDbCommand(sqlStr, connection);
 8 
 9&mand.Parameters.Add( @Title , OleDbType.Char).Value = title;
10 
11&mand.Parameters.Add( @Content , OleDbType.VarWChar).Value = content;
12 
13&mand.Parameters.Add( @PublishTime , OleDbType.DBDate).Value = publishTime;
14
15&mand.Parameters.Add( @Url , OleDbType.VarWChar).Value = url;
16
17&mand.Parameters.Add( @ID , OleDbType.Integer).Value = id;
18
19 connection.Open();
20&mand.ExecuteNonQuery();
21 connection.Close();
22 }
23 }

不知道道这是否算ACCESS的BUG.