| 包 | XS.util.db |
|---|---|
| 继承关系 | abstract class XSDatabasePDO » XSDatabase |
| 子类 | XSDatabasePDO_MySQL, XSDatabasePDO_PgSQL, XSDatabasePDO_SQLite |
| 版本 | 1.0.0 |
| 源代码 | sdk/php/util/XSDataSource.class.php |
| 名称 | 描述 | 定义于 |
|---|---|---|
| close() | 关闭数据库 | XSDatabasePDO |
| connect() | 连接数据库 | XSDatabasePDO |
| query() | 执行 SQL 语句 | XSDatabasePDO |
| query1() | 查询数据库首行 | XSDatabase |
| setUtf8() | 设置数据库字符集为 UTF-8 | XSDatabase |
|
public void close()
|
关闭数据库
|
public void connect(array $param)
| ||
| $param | array | 连接参数, 包含: user, pass ... |
public function connect($param)
{
$dsn = $this->makeDsn($param);
$user = isset($param['user']) ? $param['user'] : 'root';
$pass = isset($param['pass']) ? $param['pass'] : '';
try {
$this->obj = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
throw new XSException($e->getMessage());
}
}
连接数据库 具体的每个类必须实现 makeDsn 来将参数转换为 dsn
|
abstract protected void makeDsn(array $param)
| ||
| $param | array | |
提取参数内容生成 PDO 连接专用的 DSN
|
public mixed query(string $sql)
| ||
| $sql | string | 要执行的 SQL 语句 |
| {return} | mixed | |
public function query($sql)
{
//echo "[DEBUG] SQL: $sql\n";
$res = $this->obj->query($sql);
if ($res === false) {
$info = $this->obj->errorInfo();
throw new XSException('SQLSTATE[' . $info[0] . '] [' . $info[1] . '] ' . $info[2]);
}
$ret = $res->fetchAll(PDO::FETCH_ASSOC);
return $ret;
}
执行 SQL 语句
| 包 | XS.util.db |
|---|---|
| 继承关系 | abstract class XSDatabasePDO » XSDatabase |
| 子类 | XSDatabasePDO_MySQL, XSDatabasePDO_PgSQL, XSDatabasePDO_SQLite |
| 版本 | 1.0.0 |
| 源代码 | sdk/php/util/XSDataSource.class.php |
| 名称 | 描述 | 定义于 |
|---|---|---|
| close() | 关闭数据库 | XSDatabasePDO |
| connect() | 连接数据库 | XSDatabasePDO |
| query() | 执行 SQL 语句 | XSDatabasePDO |
| query1() | 查询数据库首行 | XSDatabase |
| setUtf8() | 设置数据库字符集为 UTF-8 | XSDatabase |
|
public void close()
|
关闭数据库
|
public void connect(array $param)
| ||
| $param | array | 连接参数, 包含: user, pass ... |
public function connect($param)
{
$dsn = $this->makeDsn($param);
$user = isset($param['user']) ? $param['user'] : 'root';
$pass = isset($param['pass']) ? $param['pass'] : '';
try {
$this->obj = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
throw new XSException($e->getMessage());
}
}
连接数据库 具体的每个类必须实现 makeDsn 来将参数转换为 dsn
|
abstract protected void makeDsn(array $param)
| ||
| $param | array | |
提取参数内容生成 PDO 连接专用的 DSN
|
public mixed query(string $sql)
| ||
| $sql | string | 要执行的 SQL 语句 |
| {return} | mixed | |
public function query($sql)
{
//echo "[DEBUG] SQL: $sql\n";
$res = $this->obj->query($sql);
if ($res === false) {
$info = $this->obj->errorInfo();
throw new XSException('SQLSTATE[' . $info[0] . '] [' . $info[1] . '] ' . $info[2]);
}
$ret = $res->fetchAll(PDO::FETCH_ASSOC);
return $ret;
}
执行 SQL 语句
留下一条评论吧!
请到论坛 登录 后刷新本页面!