我用delphi连接MS SQL数据库,使用TQuery控件执行SQL查询,当查询日期型字段时,如 SELECT * FROM ":kjcg:dbo.keji" WHERE kssj>'1/1/91' 提示如下错误: Invalid floating point operation.
当查询主关键字段或者索引字段并使用OR组和条件时,如 SELECT * FROM ":kjcg:dbo.keji" WHERE djh='101' OR djh='102' 提示如下错误: Access violation at address 4C608D33 in module 'idsql32.DLL'. Read of address 00000105. 使用本地Paradox数据库时没有这些问题。 请专家们解救,毛病出在哪儿?
----------------------------------------------
一个篱笆三个桩,一个好汉三个帮
我有进展了。试了强制转换可以, SELECT * FROM ":kjcg:dbo.keji" WHERE CAST(kssj,DATE)>'1/1/91' SELECT * FROM ":kjcg:dbo.keji" WHERE CAST(djh,INT)='101' OR CAST(djh,INT)='102' 我的数据库里kssj字段是smalldatetime类型,djh是integer类型。我不知道为什么会这样,毛病出在哪儿呢?
----------------------------------------------
一个篱笆三个桩,一个好汉三个帮