我已经try 按照PHP.net的说明执行SELECT
个查询,但我不确定执行此操作的最佳方式.
如果可能的话,我想使用参数化的SELECT
查询,在name
字段与参数匹配的表中返回ID
.这应该返回一个ID
,因为它是唯一的.
然后,我想使用INSERT
的ID
到另一个表,所以我需要确定它是否成功.
我还读到,您可以准备查询以供重用,但我不确定这有什么帮助.
我已经try 按照PHP.net的说明执行SELECT
个查询,但我不确定执行此操作的最佳方式.
如果可能的话,我想使用参数化的SELECT
查询,在name
字段与参数匹配的表中返回ID
.这应该返回一个ID
,因为它是唯一的.
然后,我想使用INSERT
的ID
到另一个表,所以我需要确定它是否成功.
我还读到,您可以准备查询以供重用,但我不确定这有什么帮助.
您可以按如下方式 Select 数据:
$db = new PDO("...");
$statement = $db->prepare("select id from some_table where name = :name");
$statement->execute(array(':name' => "Jimbo"));
$row = $statement->fetch(); // Use fetchAll() if you want all results, or just iterate over the statement, since it implements Iterator
您可以用相同的方式插入:
$statement = $db->prepare("insert into some_other_table (some_id) values (:some_id)");
$statement->execute(array(':some_id' => $row['id']));
我建议您将PDO配置为在出错时抛出异常.如果任何查询失败,您将得到PDOException
分-不需要显式判断.要打开异常,请在创建$db
对象后立即调用以下代码:
$db = new PDO("...");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);