我正在使用PHP PDO。我的存储过程返回两个结果集。是否可以命名结果集?如果它们是两个表上的SELECT语句,如
SELECT * FROM A
和
SELECT * FROM B
是否可以识别它们?
答案 0 :(得分:1)
不,你不能命名结果集,虽然我不能想到你为什么需要命名结果集的任何理由......因为存储过程返回的结果集的数量和内容是完全是任意的 - 实际上,根本不需要来自一个表(SELECT NOW() AS server_time;
),应用程序需要提前了解服务器将返回的结果的性质,以及顺序。
它们可以通过服务器响应中的序号位置“识别”......执行的第一个无界SELECT
生成您看到的第一个结果集,第二个执行生成的结果第二个......总是。
存储过程在一个线程内按顺序执行它们的指令,因此除了在程序流中遇到SELECT
语句的顺序之外,结果集永远不会以任何顺序出现,无论每个查询需要多长时间。
如果答案 - “否” - 给您留下未解决的问题,请考虑扩展您的问题以解释我们要解决的问题。