帮同学调试ASP程序,页面报错:
Microsoft OLE DB Provider for SQL Server (0x80040E07)
从字符串转换为 datetime 时发生语法错误。
但是在我的电脑上可以,放到他的电脑上就不行,查了相关资料,已经解决。
检查程序,发现程序里面获取当前时间使用的是now(),用response.write输出,发现字符串里有"上午"或"下午"出现,而SQL Server 的数据库的datetime(8)类型不接受"上午""下午",也不能自动转换,于是出错(另外试了一下,在ACCESS数据库里是不会出现这种情况的)。
比如:insert into test (Time) values ('2007-09-11 下午 3:50:12') 在ACCESS里会自动转换成24小时制,得到数值为:"2007-09-11 15:50:12"。但是在SQL Server里会出错,提示"从字符串转换为 datetime 时发生语法错误。"那这应该就是时间格式设置问题了,上网查了一下,通过以下方法解决问题。
一、windows XP的解决方法(修改注册表,我已经测试成功)
1、控制面板--区域和语言选项--把时间设置为24小时格式。
2、建立 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLEAUT\VarConversionLocaleSetting= 2 (DWORD)
注:OLEAUT 项可能不存在。如果它不存在,则必须先创建该项。
3、重新启动IIS。
问题解决。
原理是强制使asp时间使用区域格式。
二、windows 2003的解决方法(修改区域设置)
在控制面板→区域设置→时间样式和日期格式设置一下:
时间样式设置为 HH:mm:ss
短日期格式设置为 yyyy-MM-dd
(win2003不需要修改注册表,有人测试成功了)
三、通用解决方法(在程序里修改)
可以使用replace 将 "上午" 二字或其他不想要的字符替换掉...
比如 <%=replace(now,"上午","")%>
或者直接替换掉所有的中文字符:Replace(now,"[\u4e00-\u9fa5]","")
只用了第一种,测试成功,下面的两种没有试验,需要的朋友可以尝试!
分享到:
相关推荐
您可能感兴趣的文章:sql语句中如何将datetime格式的日期转换为yy-mm-dd格式将WMI中的DateTime类型转换成VBS时间的函数代码LINQ字符串向datetime 转换时失败的处理方法Sql中将datetime转换成字符串的
yyyyMMddHHmmss 字符串 转DateTime
本文实例讲述了C#实现将字符串转换成日期格式的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:string s = “20120114161145”; Response.Write(DateTime.ParseExact(s, “yyyyMMddHHmmss”, new System...
js string转date,js字符串转换成日期,此代码支持将datetime(年月日小时分秒格式)转换为js的Date类型,程序已调试并支持在HTML中运行、代码请见附件。
SQL的datetime类型数据转换为字符串格式大全 2007-10-10 11:11:43 2007/10/10 SELECT convert(char(20),getdate(),120) as TIME_1,convert(char(20),getdate(),111) as TIME_2 将字符串20100426103059转换为...
今天在使用LINQ时,由于数据库中的时间保存的是varchar()格式,查询时需要比较时间先后,于是使用了: 代码如下:from j in system.jhzdwhere j.dwbm.ToString().Trim() == branchcode.ToString().Trim()&& Convert....
主要介绍了Sql中将datetime转换成字符串的方法,需要的朋友可以参考下
1. 字符串日期时间转换成时间戳 # '2015-08-28 16:43:37.283' --> 1440751417.283 # 或者 '2015-08-28 16:43:37' --> 1440751417.0 def string2timestamp(strValue): try: d = datetime.datetime.strptime...
SQL的datetime类型数据转换为字符串格式大全.doc
主要介绍了C#、.Net中把字符串(String)格式转换为DateTime类型的三种方法,本文总结了Convert.ToDateTime(string)、Convert.ToDateTime(string, IFormatProvider)、DateTime.ParseExact()三种方法,需要的朋友可以参考...
你的应用程序接受字符串格式的输入,但是你想将它们转换为 datetime 对象以便在上面执行非字符串操作。 解决方案 使用Python的标准模块 datetime 可以很容易的解决这个问题。比如: >>> from datetime import ...
1.绑定时格式化日期方法: <ASP:BOUNDCOLUMN DATAFIELD= "JoinTime " DATAFORMATSTRING= "{0:yyyy-MM-dd} " > <ITEMSTYLE WIDTH= "18% " > </ASP:BOUNDCOLUMN > 2.数据控件如DataGrid/DataList等的件格式化日期方法...
担心以后找不到了,留着文档以备查。本方法用于解决linq to EF中从string转成DateTime时不能使用LINQ的ConvertToDateTime的情况。仅用于备查。
主要介绍了Python时间和字符串转换操作,结合实例形式分析了Python时间的格式化输出、时间戳转换、datetime转换字符串等相关操作技巧,需要的朋友可以参考下
主要介绍了C# string格式的日期时间字符串转为DateTime类型的方法,需要的朋友可以参考下
日期解析器将不同的日期字符串解析为datetime对象。安装pip3 install date-parser 用法from date_parser.parser import DateParserdp = DateParser()自然语言dp.parse_date('September 24th 1929')>> datetime....
3.6.2 把字符串转换为日期和时间 82 3.7 在集合与数组之间移动字符串 84 3.7.1 数组 85 3.7.2 ArrayList对象 86 3.7.3 IDictionary对象 88 3.8 小结 88 第4章 国际化 89 4.1 Unicode 89 4.2 .NET Framework的编码类 ...
您可能感兴趣的文章:将WMI中的DateTime类型转换成VBS时间的函数代码LINQ字符串向datetime 转换时失败的处理方法时间字符串转换成日期对象datetime的方法Sql中将datetime转换成字符串的方法(CONVERT)Python中实现对...