errors.inc
来自「apache windows下的一款好」· INC 代码 · 共 52 行
INC
52 行
<?php
function errhandler($obj)
{
if ($obj->getCode() == DB_ERROR) {
print " unknown: ".$obj->getUserInfo()."\n";
} else {
$msg = $obj->getMessage();
print " $msg";
if (substr($msg, -1) != "\n") {
print "\n";
}
}
}
$dbh->setErrorHandling(PEAR_ERROR_CALLBACK, "errhandler");
print "Trying to provoke DB_ERROR_NOSUCHTABLE\n";
$dbh->query("SELECT * FROM tableThatDoesNotExist");
print "Trying to provoke DB_ERROR_ALREADY_EXISTS\n";
$dbh->query($test_mktable_query);
print "Trying to provoke DB_ERROR_NOSUCHTABLE\n";
$dbh->query("DROP TABLE tableThatDoesNotExist");
print "Trying to provoke DB_ERROR_CONSTRAINT\n";
$dbh->setErrorHandling(PEAR_ERROR_RETURN);
$dbh->query("DROP TABLE a");
$dbh->query("DROP TABLE b");
$dbh->setErrorHandling(PEAR_ERROR_CALLBACK, "errhandler");
$dbh->query("CREATE TABLE a (a INTEGER NOT NULL, PRIMARY KEY(a))");
$dbh->query("CREATE TABLE b (b INTEGER REFERENCES a(a))");
$dbh->query("INSERT INTO a VALUES(1)");
$dbh->query("INSERT INTO b VALUES(2)");
$dbh->query("DROP TABLE a");
$dbh->query("DROP TABLE b");
print "Trying to provoke DB_ERROR_DIVZERO\n";
$dbh->query("SELECT 0/0");
print "Trying to provoke DB_ERROR_INVALID_NUMBER\n";
$dbh->query("UPDATE phptest SET a = 'abc' WHERE a = 42");
print "Trying to provoke DB_ERROR_NOSUCHFIELD\n";
$dbh->query("SELECT e FROM phptest");
print "Trying to provoke DB_ERROR_SYNTAX\n";
$dbh->query("SYNTAX TERROR");
?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?