以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  sql语句日期  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=129919)

--  作者:hbhb
--  发布时间:2019/1/8 18:58:00
--  sql语句日期
大师;accesss数据库,执行sql语句后,日期列变成整数,如何避免?除了用year(日期列)& “-” & menth(日期列),其他有没有函数直接用?
--  作者:有点蓝
--  发布时间:2019/1/8 21:03:00
--  
执行了什么sql语句?
--  作者:有点甜
--  发布时间:2019/1/9 9:53:00
--  

那你就转换成字符

 

http://www.foxtable.com/webhelp/scr/1513.htm

 


--  作者:hbhb
--  发布时间:2019/1/9 16:05:00
--  
access数据库日期列的记录是37622 ,我要填充的日期列是时间类型,填充时显示整形强制转换 为时间型不成功。那么如何保证填充时不出问题,select语句如何条件判断,iif(cdate(日期列),日期列,.....)。怎么写?
--  作者:有点甜
--  发布时间:2019/1/9 16:41:00
--  

1、日期列数据怎么可能是一个整数?你这一列是数值类型?

 

2、如果收37622,你需要怎么转换?这个意思?

 

Dim num = 42003.41668
Dim d = DateTime.FromOADate(num)
msgbox(d)

 

 


--  作者:hbhb
--  发布时间:2019/1/9 17:06:00
--  
有的企业access数据库中日期列,用access打开后就是整数。
对的,那如何直接用在SQL的语句中判断?还是单独用语句判断更改?
--  作者:有点甜
--  发布时间:2019/1/9 17:19:00
--  

如果是整数或者数值,那么这一列,就不是日期类型的列。

 

如果你需要把数值转换成日期,参考代码

 

select DateAdd(\'d\', 42003.41668, \'1899-12-30\') from {表A}


--  作者:hbhb
--  发布时间:2019/1/9 17:37:00
--  
谢谢!那SQL语句中,如何判断列类型?
--  作者:有点甜
--  发布时间:2019/1/9 17:45:00
--  
以下是引用hbhb在2019/1/9 17:37:00的发言:
谢谢!那SQL语句中,如何判断列类型?

 

无法直接判断的。


--  作者:hbhb
--  发布时间:2019/1/9 18:45:00
--  
一个字:烦
甜大师:是否可以当兼职顾问?