为什么在ADO连到PARADOX数据库不能通过,但对于SQL SERVER(表结构与PARADOX相同)却能通过。
在DATABASE DESKTOP中,这样的查询语句应该怎么写?
14 个解决方案
#1
Select * from account where workdate='09/20/2002'
paradox的日期格式是:“mm/dd/yyyy”
paradox的日期格式是:“mm/dd/yyyy”
#2
OK,改成MM/DD/YYYY后,通过,但要怎样才能用回YYYY-MM-DD格式呢?
#3
//参考FormatDateTime()函数
//参考TDataSet.FieldByName()方法
//参考TField.AsDateTime属性
Caption := FormatDateTime('yyyy-mm-dd', Date);
//参考TDataSet.FieldByName()方法
//参考TField.AsDateTime属性
Caption := FormatDateTime('yyyy-mm-dd', Date);
#4
前不久我做的一个工资管理小程序就遇过此问题,现在就拿出来大家共享了。必须用参数的形式,否则出错!如下方法,保你OK!。
select * from account where workdate=:workdate
dm.qrQuery.paramByName('workdate').asDate:=strToDate('2002-09- 20');
//当然用控件也是一样,
dm.qrQuery.paramByName('workdate').asDate:=TDateTimePicket.Date;
select * from account where workdate=:workdate
dm.qrQuery.paramByName('workdate').asDate:=strToDate('2002-09- 20');
//当然用控件也是一样,
dm.qrQuery.paramByName('workdate').asDate:=TDateTimePicket.Date;
#5
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM-dd-yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
用:
Caption := FormatDateTime('MM-dd-yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
#6
错了,改正:
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM/dd/yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM/dd/yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
#7
Caption := FormatDateTime('MM"/"dd"/"yyyy', Date)
#8
各位,我是用ADO连PARADOX,日期格式现在是对了,但还是出现:[Microsoft][ODBC Paradox Dirver]标准表达式中数据类型不匹配。
要怎么解决呀?
要怎么解决呀?
#9
来晚了。
#10
你试过我那个方法了吗?
根本不用进行格式转换。也不会出现数据类型不匹配的情况。
根本不用进行格式转换。也不会出现数据类型不匹配的情况。
#11
to haoqingqlm:
用参数来处理确实比较方便。
特别是使用其他数据库是也不用修改什么代码。
但,参数执行需要Delphi在进行解析,这样执行速度会下降。
当然最主要的是调试SQL语句的时候就不方便了!
将SQL语句和Delphi环境分开来调试这样就减少了复杂度。
无论如何,解决问题先。
嘻嘻嘻 个人观点,仅供参考 嘻嘻嘻嘻
用参数来处理确实比较方便。
特别是使用其他数据库是也不用修改什么代码。
但,参数执行需要Delphi在进行解析,这样执行速度会下降。
当然最主要的是调试SQL语句的时候就不方便了!
将SQL语句和Delphi环境分开来调试这样就减少了复杂度。
无论如何,解决问题先。
嘻嘻嘻 个人观点,仅供参考 嘻嘻嘻嘻
#12
to dgxum: 检查一下的设置的路径是否正确?
//参考如下代码
dm.qrQuery.DatabaseName := 'D:\MySoft\Database\';
//参考如下代码
dm.qrQuery.DatabaseName := 'D:\MySoft\Database\';
#13
各位老大,我是用ADO的QUERY呀,最简单的:
select workdate from ACCOUNT where workdate=2002-09-24(其实这天有数据的,为什么查不出来?)
select workdate from ACCOUNT where workdate=2002-09-24(其实这天有数据的,为什么查不出来?)
#14
TO:haoqingqlm(木头)
我用ADO控件,如何用参数?
我用ADO控件,如何用参数?
#1
Select * from account where workdate='09/20/2002'
paradox的日期格式是:“mm/dd/yyyy”
paradox的日期格式是:“mm/dd/yyyy”
#2
OK,改成MM/DD/YYYY后,通过,但要怎样才能用回YYYY-MM-DD格式呢?
#3
//参考FormatDateTime()函数
//参考TDataSet.FieldByName()方法
//参考TField.AsDateTime属性
Caption := FormatDateTime('yyyy-mm-dd', Date);
//参考TDataSet.FieldByName()方法
//参考TField.AsDateTime属性
Caption := FormatDateTime('yyyy-mm-dd', Date);
#4
前不久我做的一个工资管理小程序就遇过此问题,现在就拿出来大家共享了。必须用参数的形式,否则出错!如下方法,保你OK!。
select * from account where workdate=:workdate
dm.qrQuery.paramByName('workdate').asDate:=strToDate('2002-09- 20');
//当然用控件也是一样,
dm.qrQuery.paramByName('workdate').asDate:=TDateTimePicket.Date;
select * from account where workdate=:workdate
dm.qrQuery.paramByName('workdate').asDate:=strToDate('2002-09- 20');
//当然用控件也是一样,
dm.qrQuery.paramByName('workdate').asDate:=TDateTimePicket.Date;
#5
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM-dd-yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
用:
Caption := FormatDateTime('MM-dd-yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
#6
错了,改正:
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM/dd/yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
如果我要把2002-09-24转成09/24/2002怎么转?
用:
Caption := FormatDateTime('MM/dd/yyyy', Date)转出来的是:09-24-2000,不是09/24/2002呀,这个"/"要怎么才能出来呀
#7
Caption := FormatDateTime('MM"/"dd"/"yyyy', Date)
#8
各位,我是用ADO连PARADOX,日期格式现在是对了,但还是出现:[Microsoft][ODBC Paradox Dirver]标准表达式中数据类型不匹配。
要怎么解决呀?
要怎么解决呀?
#9
来晚了。
#10
你试过我那个方法了吗?
根本不用进行格式转换。也不会出现数据类型不匹配的情况。
根本不用进行格式转换。也不会出现数据类型不匹配的情况。
#11
to haoqingqlm:
用参数来处理确实比较方便。
特别是使用其他数据库是也不用修改什么代码。
但,参数执行需要Delphi在进行解析,这样执行速度会下降。
当然最主要的是调试SQL语句的时候就不方便了!
将SQL语句和Delphi环境分开来调试这样就减少了复杂度。
无论如何,解决问题先。
嘻嘻嘻 个人观点,仅供参考 嘻嘻嘻嘻
用参数来处理确实比较方便。
特别是使用其他数据库是也不用修改什么代码。
但,参数执行需要Delphi在进行解析,这样执行速度会下降。
当然最主要的是调试SQL语句的时候就不方便了!
将SQL语句和Delphi环境分开来调试这样就减少了复杂度。
无论如何,解决问题先。
嘻嘻嘻 个人观点,仅供参考 嘻嘻嘻嘻
#12
to dgxum: 检查一下的设置的路径是否正确?
//参考如下代码
dm.qrQuery.DatabaseName := 'D:\MySoft\Database\';
//参考如下代码
dm.qrQuery.DatabaseName := 'D:\MySoft\Database\';
#13
各位老大,我是用ADO的QUERY呀,最简单的:
select workdate from ACCOUNT where workdate=2002-09-24(其实这天有数据的,为什么查不出来?)
select workdate from ACCOUNT where workdate=2002-09-24(其实这天有数据的,为什么查不出来?)
#14
TO:haoqingqlm(木头)
我用ADO控件,如何用参数?
我用ADO控件,如何用参数?