我在SQL SERVER中建了一个存贮过程,用来统计数据,其有两个参数,表示统计的起始与结束日期,数据类型设为varchar(10)。该存贮过程在SQLSERVER中执行正确。我在ASP.NET的页面中调用这个存贮过程时出错,出错信息为“从字符串转换为 datetime 时发生语法错误”,我想出错的地方肯定发生在那两个参数的使用时,可是为什么单独运行时不出错,两个联合起来就错了呢?很急的,请各位不吝指教。
解决方案 »
- GridView已绑定数据集 有一字段【name】,现在需要通过点击一个Button按钮将一个TextBox里的文本插入到GridView里并保存,代码咋写 谢
- 正则怎么写?
- 求助字符串截取
- C# winform程序 怎么读取ftp文件服务器上指定文件夹下的所有文件 ?? 在线等。。。
- 在.net中如何把*.mdb文件嵌入在dll中,并实现对access数据库的存取?
- 求读写CSV文件,能够处理各种特殊字符的标准代码,不用OleDb
- 如何判断TreeView1里的选项有没有被选中,代码?谢谢!
- 图像处理如何加速??
- 进度条???
- WCF性能问题大探讨 -- 大家多给我点建议
- 询问修改XML文件的方法
- 急~~~~~我在窗口上放了一个button,控件中无任何代码,为什么一点击按钮就打开一个新页呢?
“从字符串转换为 datetime 时发生语法错误”
------------------------------
就是说你的参数传递时有错误
1、cs页面参数是varchar型而不datetime型
2、存储过程也须是varchar型
指定参数类型出错,
检查加载到SqlCommand的SqlParameter参数对象。
SqlParameter myPara = new SqlParameter("@LOG_Time",SqlDbType.DateTime);
myPara.Value = DateTime.Now;
myComm.Parameters.Add(myPara);
//修改成
SqlParameter myPara = new SqlParameter("@LOG_Time",SqlDbType.VarChar,50);
myPara.Value = DateTime.Now.ToString;
myComm.Parameters.Add(myPara);
第一,存储过程应该不会错误
第二,你在c#中读取存储过程返回的数据的时候,需要把字符转成datetime类型
如果存在不合法的时间,那么在转换的时候,可能会出错误!