我正在使用 Delphi 7,并且我有一个名为的表Table_1
,其中有两个字段,例如 , IMageCode Varchar(50)
,ActImage [Blob in Oracle, VarBinary(Max) in SQL Server]
它插入了四个记录,包括图像和相应的图像代码。
当我在 Oracle 中编写如下 SQL 时:
Select * from Table_1 where Upper(ImageCode) ='SUNSET'
TADOQuery 不返回任何记录,当我检查TADOQuery.RecordCount
它显示0
时,当我尝试查看TADOQuery.IsEmpty
它时说True
。然后,当我在 Oracle 编辑器中执行相同的查询时,它按预期返回一条记录,但在 delphi 中,TADOQuery 不返回任何记录。
但是当我为 oracle 数据库编写以下简单的 sql 时,它使用 TADOQuery 返回所有四条记录:
Select * from Table_1
正如上面使用 TADOQuery 所讨论的,我在 SQL Server 数据库中没有发现任何问题。
ADOConnection.Connected := False;
ADOConnection.LoginPrompt := False;
ADOConnection.ConnectionString := <Connection String>;
ADOConnection.Connected := True;
ADOQuery1.Connection := ADOConnection;
with ADOQuery1 do begin
Active := False;
SQL.Clear;
//SqL.Add('Select * from Table_1 where Upper(ImageCode) = ' + QuotedStr(Uppercase(Trim(edtImageCode.Text))));
SqL.Add('Select * from Table_1 where Upper(ImageCode) = ''SUNSET''');
Active := True;
end;
有人能把重点放在可能是什么问题上吗?