【问题标题】:NOTORM how to know sql queryNOTORM如何知道sql查询
【发布时间】:2016-08-18 10:29:37
【问题描述】:

在 notorm 文档中,我们知道使用 (string) $table 获取 sql 查询 但是我使用它时没有得到任何结果。

$data = array('name'=>'testing','age'=>'25')
$result = $db->table->insert($data);
echo (string) $result ;

我知道查询是insert into table (name,age) values('testing','25'); 我想将查询捕获到变量。但echo (string) $result 没有显示任何内容。

注意:抱歉英语不好

【问题讨论】:

标签: php notorm


【解决方案1】:

无论何时执行insert()update()insert_update(),它都会返回最后插入的行。因此,当您使用 $result = $db->table->insert($data); 时,$result 将是一个数组。这就是为什么你什么都看不到。尝试使用这个:

echo "<pre>";print_r($result);echo "</pre>";exit;

当您使用select 时,它将返回一个 SQL 查询。当你想得到(string) $result 它应该返回主键值。我不确定,但我以前不需要该查询,所以它可能只适用于selects

【讨论】:

  • 感谢您的回答,我没有尝试过您的建议...现在我手动编写查询
  • 好的,如果你找到解决方案,也请告诉我,我也想知道那个,即使我不需要它:)
  • echo (string) $result 仅在查询 $result 以选择表时才有效,因此如果 $result = $db-&gt;table() 和我使用 echo (string) $result,它会显示 SELECT * FROM table。如果 $result 是要像上面那样插入的查询,则不显示任何内容
  • 是的,就是这样。但是为了调试目的,让它也适用于 INSERT 或 UPDATE 会非常有用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-10
  • 1970-01-01
  • 2021-12-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多