ACCESS中设计的日期字段类型为什么VB提示数据类型不匹配?
大家好,VB菜又来了
我在学习了一些日子后,可以在原程序后面增加新的字段了,也出现了一个问题,想请教大家一下,是这样子的
我的是VB6+ACCESS的一个小程序
我在数据库的设计最后面加新的列字段类型是文本的,我在程序里用
sql = "insert into 就可以了,生成的程序也可以录入新的数据
可是我现在增加的字段是一个日期,我的ACCSEE设计列字段名为收费日期,类型为日期/时间,ACCESS的格式是短日期就是那种1977-6-19样子的
我设计好后在程序代码里,加代码,运行就会提示数据类型错误,在ACCESS变为文本类型就可以正常录入,所以我觉得是代码的错误,于是就复制了一些代码来请教一下
原程序代码也有一个时间,也是为日期/时间类型,短日期的,
sql = "insert into 收缴记录 (开票时间) values(sql = sql & Trim(Text65.Text) & " ', ' "
"这个开票就是一个日期/时间类型,在ACCESS就是这样的.在VB窗体就是TEXT65
我新加的收费日期以后,在后面加代码为,
sql = "insert into 收缴记录 (开票时间,....收费日期) values(sql = sql & Trim(Text65.Text) & " ', ' "....
sql = sql & Trim(stardata.Text) & " ') "是把上面的复制下来只改了一个TEXT的名称而已,运行程序提示数据类型不匹配,
我想到了一个强制把文本内容变成日期的一个方法,可是不是很清楚这种方法的使用,而且不太会写,因为我想后面还要以日期为查询条件来查询的,这样转换成日期格式会不会影响查询的代码书写呢?
我是模仿上面原码里的开票日期的代码,为什么会出错呢,没什么区别呀
把文本框里的内容变成1994-9-4的日期是用什么函数呢,写法是怎么样的,如果这样转换写查询的时候会不会出错呢?
请大家指点一下,我想我把问题说得比较清楚了吧,感谢大家帮忙
[解决办法]
比如说:
str = "2002.03.04 8:59:34 "
str = replace(str, ". ", "- ")
sql = "SELECT * FROM 表 WHERE 日期时间=# " & str & "# "
你把你的SQL debug.print出来就知道了。
[解决办法]
cstr(date)
不是data,而是date
cdate()是变date的函数
cstr()是变string的函数
textbox里面的永远是string
必要的时候要经过上面的函数转换
[解决办法]
把文本框里的内容变成1994-9-4的日期是用什么Format函数
Format(text1.Text, yyyymmdd) ' 例子2000-08-02