【发布时间】:2014-07-29 15:02:07
【问题描述】:
我在一个 VCL 项目中工作。我用Insert 填充TUniQuery,它使用sub select。查看 MySQL 日志文件,我可以看到命令正在访问数据库。没有报告错误或异常,一切似乎都在正常执行。但是,当我查询数据库时,数据不存在。如果我从日志文件中复制并粘贴命令并在 dbForge 中运行它,那么它会正确执行命令并填充表。下面是没有指定字段的代码:
UniQuery->Close();
UniQuery->SQL->Clear();
UniQuery->SQL->Add("INSERT INTO tmplegacypricingdistinct (...) ");
UniQuery->SQL->Add("SELECT DISTINCT ... FROM tmplegacypricing");
UniQuery->Execute();
我打算将使用的表制作成临时表,但它们目前是真实的表。
我的一些想法是它可能是连接,但由于它被记录在 mysql 日志文件中,我认为这不是问题。我有一个解决方法,就是将信息拉下来,然后一次插入一条记录,但我不想将数据拉到网络上并且必须这样做。关于我可以做些什么来让这一切发生在服务器端的想法或想法,或者我对上述方法的问题可能是什么?
【问题讨论】:
标签: mysql sql-insert sql-subselect c++builder-xe6 uniquery