with OperateQry do
begin
Close;
SQL.Clear ;
SQL.Add('select * from Operate where Code = ''' + AUID + '''');
Open;
if not IsEmpty then
begin
lstr := FieldbyName('Password').asstring;
//出错,提示说没有这个字段,用Fields[1].asstring;也不行,好像根本就没有数据。可IsEmpty却是False 实际上数据库里是有满足条件的纪录的。
begin
Close;
SQL.Clear ;
SQL.Add('select * from Operate where Code = ''' + AUID + '''');
Open;
if not IsEmpty then
begin
lstr := FieldbyName('Password').asstring;
//出错,提示说没有这个字段,用Fields[1].asstring;也不行,好像根本就没有数据。可IsEmpty却是False 实际上数据库里是有满足条件的纪录的。
Open;
if not IsEmpty then
begin
first;/////////
if not Fields[0].Isnull then lstr := Fields[0].asstring;///////////
并且软件运行很久了,发行出去的没出现这个问题,最近我的电脑里的都出现这个问题了,
我重新编译原来的代码也不行。
把SQL.Add('select * from Operate where Code = ''' + AUID + '''');
改为SQL.Add('select * from Operate where Code = '' + AUID + '');
begin
Close;
SQL.Clear ;
SQL.Add('select password from Operate where Code = ''' + AUID + '''');
Open;
if not IsEmpty then
begin
lstr := Fields[0].asstring;
begin
Close;
SQL.Clear ;
SQL.Add( Format( 'select password from Operate where Code = %s ), [ QuotedStr( AUID ) ] );
Open;
If RecordCount > 0 Then
begin
lstr := Fields[0].asstring;
....
把SQL.Add('select * from Operate where Code = ''' + AUID + '''');
改为SQL.Add('select * from Operate where Code = '' + AUID + '');这样肯定错
回复人: DWGZ() ( ) 信誉:100 2003-06-23 13:06:00 得分:0
不要用与系统关键字冲突的字段命名,Password改为PWD试试
***************************************8