C/S SQL2000 数据库procedure TForm1.BitBtn1Click(Sender: TObject);
VAR
UNAME:string;
UWORD:string;
begin
if (edit1.text='') or
(edit2.text='')
then
begin
showmessage('请输入用户和口令!');
exit;
End;
UNAME:=edit1.text;
UWORD:=edit2.text;
query1.close;
query1.sql.clear;
query1.sql.add('select usercode,username,bags,class,status from users where USERNAME='+UNAME+' AND PASSWORD='+UWORD);
query1.open; end;end.提交时
错误如下 INVAILD FIELD NAME,ODBC(SQL SERVER)列名无效‘SYSTEM’(EDIT1.TEXT的输入值)???什么原因呀
VAR
UNAME:string;
UWORD:string;
begin
if (edit1.text='') or
(edit2.text='')
then
begin
showmessage('请输入用户和口令!');
exit;
End;
UNAME:=edit1.text;
UWORD:=edit2.text;
query1.close;
query1.sql.clear;
query1.sql.add('select usercode,username,bags,class,status from users where USERNAME='+UNAME+' AND PASSWORD='+UWORD);
query1.open; end;end.提交时
错误如下 INVAILD FIELD NAME,ODBC(SQL SERVER)列名无效‘SYSTEM’(EDIT1.TEXT的输入值)???什么原因呀
我不明白'''和''''
书上为什么不是这么写,是不是因为SQL2000的原因吗
procedure TForm1.Button1Click(Sender: TObject);
VAR
UNAME:string;
UWORD:string;
begin
if (edit1.text='') or
(edit2.text='')
then
begin
showmessage('请输入用户和口令!');
exit;
End;
UNAME:=edit1.text;
UWORD:=edit2.text;
query1.close;
query1.sql.clear;
query1.sql.add('select usercode,username,bags,class,status from users where USERNAME='+UNAME+' AND PASSWORD='+UWORD);
query1.open;
query1.SQL.SaveToFile('d:/123.txt');
//把 d:/123.txt打看,看看是什么问题
end;
试试看!
另外:查询语句的WHERE子句也有问题,应该改为:
...
query1.SQL.add(' select usercode,username,bags,class,status ' +
' from users ' +
' where USERNAME = ' + QuotedStr(UNAME) + //目的是加上引号
' AND PASSWORD = ' + QuotedStr(UWORD) //目的是加上引号 );
...
TO:cdsgajxlp(起名很难)
“ query1.SQL.SaveToFile('d:/123.txt');
//把 d:/123.txt打看,看看是什么问题”
--没有d:/123.txt 未执行到query1.sql.add('select usercode,username,bags,class,status from users where USERNAME='''+UNAME+''' AND PASSWORD='''+UWORD+'''');
可以啦我后来我在DATAMODULE 加了ADOCONNECT 用“INI文件调用”又有新问题了
什么“TABLE DO NOT EXIST”
FILE ....USER.DBF
FILE ...USER.TXT
...
好难哟