我在MySQL中有2个表。第一个表已经有了值。现在我想获取最后一行的值并将它们插入第二个表但我不知道如何编写Prolog代码以获取最后一个插入的id。你能帮助我吗?我尝试过类似的东西,但它不起作用。
connect :- odbc_connect('connect', _,
[ user(root),
alias(test1911),
password(''),
open(once)
]).
fetch(Options) :-
connect,
odbc_prepare(test1911, 'select * from test ', [default, default,default], Statement, [fetch(fetch), types([integer, varchar, integer])]),
odbc_execute(Statement, [id,name,age]),
odbc_fetch(Statement, Row, last).
但是我收到了这个错误
ERROR: Domain error: 'length' expected, found '[default,default,default]'
答案 0 :(得分:0)
此错误是特定于SWI-Prolog的ODBC。这意味着ODBC引擎不知道如何将某些值转换回特定类型。在准备调用中尝试类型([默认,默认,默认])(字符串未转换/应适用于任何类型),直到找到导致问题的那个。
也许发送通知给作者/ swi-prolog邮件列表哪个类型有问题(如果“我的”不是旧的DBase“十进制保存为字符串”,我已发送它; - )