我想在单个数据库文件上显示来自2个表的TDbgrid数据。我试过写sql语句,如:
select "Client", "Address", "Balance" from "table1"
and "Payment" from "table2"
但它始终显示此错误
SQL Error: Dynamic SQL Error DQL Error code = -104 Token Unknown - line 2,
column1 and.Error -104.Invalid token The SQL: select "Client", "Address", "Balance"
from "table1"
and "Payment" from "table2"
我不知道是不可能还是我在编写代码时遇到错误,或者是我需要修改的TDbgrid。我搜索了一个zeos sql指南,但我找不到一个。我得到的只是:http://www.intitec.com/varios/A_ZEOS_basics_tutorial_not_only_for_firebird.pdf但我的一些问题仍然没有答案。
我正在使用firebird数据库2.5和delphi 7。
我可以使用哪些SQL代码?
答案 0 :(得分:6)
您的语法无效。
SELECT * FROM table1, table2
但是,上述内容也没有意义,因为您从两个单独的表中选择每个列和行,而无法连接这两个表。
Table1
ColumnA ColumnB
======= =======
Nonsense Here
Orange Noise
Table2
ColumnC ColumnD
======= =======
Horse Radish
No Sense
SELECT * FROM Table1, Table2
结果:
ColumnA ColumnB ColumnC ColumnD
======= ======= ======= =======
Nonsense Here Horse Radish
Orange Noise No Sense
即使在编辑之后,查询也没有意义。
SELECT Table1.ColumnA, Table1.ColumnB, Table2.ColumnC, Table2.ColumnD
FROM Table1, Table2
仍会产生相同的结果。
你真的应该寻找有关数据库编程和SQL的教程。谷歌可以提供帮助。
答案 1 :(得分:0)
我的SQL语句中只有一些无效的语法。这解决了我的问题
SELECT Table1.ColumnA, Table1.ColumnB, Table2.ColumnC, Table2.ColumnD
FROM Table1, Table2
非常感谢。