PDO::commit
PDO::commit提交一個(gè)事務(wù)(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
說(shuō)明
語(yǔ)法
```bool PDO::commit ( void )
提交一個(gè)事務(wù),數(shù)據(jù)庫(kù)連接返回到自動(dòng)提交模式直到下次調(diào)用 PDO::beginTransaction() 開始一個(gè)新的事務(wù)為止。
## 返回值
成功時(shí)返回 TRUE, 或者在失敗時(shí)返回 FALSE。
## 實(shí)例
### 提交一個(gè)基礎(chǔ)事務(wù)
```php
?php
/* 開始一個(gè)事務(wù),關(guān)閉自動(dòng)提交 */
$dbh->beginTransaction();
/* 在全有或全無(wú)的基礎(chǔ)上插入多行記錄(要么全部插入,要么全部不插入) */
$sql = 'INSERT INTO fruit
(name, colour, calories)
VALUES (?, ?, ?)';
$sth = $dbh->prepare($sql);
foreach ($fruits as $fruit) {
$sth->execute(array(
$fruit->name,
$fruit->colour,
$fruit->calories,
));
}
/* 提交更改 */
$dbh->commit();
/* 現(xiàn)在數(shù)據(jù)庫(kù)連接返回到自動(dòng)提交模式 */
?>
提交一個(gè)DDL事務(wù)
?php
/* 開始一個(gè)事務(wù),關(guān)閉自動(dòng)提交 */
$dbh->beginTransaction();
/* Change the database schema */
$sth = $dbh->exec("DROP TABLE fruit");
/* 更改數(shù)據(jù)庫(kù)架構(gòu) */
$dbh->commit();
/* 現(xiàn)在數(shù)據(jù)庫(kù)連接返回到自動(dòng)提交模式 */
?>
注意:并不是所有數(shù)據(jù)庫(kù)都允許使用DDL語(yǔ)句進(jìn)行事務(wù)操作:有些會(huì)產(chǎn)生錯(cuò)誤,而其他一些(包括MySQL)會(huì)在遇到第一個(gè)DDL語(yǔ)句后就自動(dòng)提交事務(wù)。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
您可能感興趣的文章:- PDO::prepare講解
- PDO::lastInsertId講解
- PDO::inTransaction講解
- PDO::getAvailableDrivers講解
- PDO::getAttribute講解
- PDO::exec講解
- PDO::errorInfo講解
- PDO::errorCode講解
- PDO::_construct講解
- PDO::query講解