ODBC驱动

ODBC的SQL预处理语句对中文支持跟ODBC驱动有关,例如{MySQL ODBC 5.3 ANSI Driver}{MySQL ODBC 5.3 Unicode Driver}
如果发现中文乱码问题,可以尝试替换驱动。
属性
命名空间 fize\db\middleware\driver
类名 Odbc
方法:
方法名 说明
__construct() 构造
__destruct() 析构
autocommit() 获取或设置自动提交状态
closeAll() 关闭所有ODBC连接
close() 关闭当前ODBC连接
columnprivileges() 列出给定表的列和相关联的特权
columns() 列出指定表中的列名。
commit() 提交ODBC事务
dataSource() 返回当前连接的信息。
exec() 执行一个SQL语句,返回结果集
foreignkeys() 获取检索外键的列表。
gettypeinfo() 检索有关数据源支持的数据类型的信息。
prepare() 设置一个预处理语句
primarykeys() 获取指定表的主键
procedurecolumns() 检索参数到过程的信息
procedures() 获取存储在特定数据源中的过程列表。
rollback() 回滚当前事务
setoption() 改变属性
specialcolumns() 获取指定表的索引
statistics() 检索表的统计信息
tableprivileges() 列出与每个表相关联的表和特权。
tables() 获取存储在特定数据源中的表名列表。

方法

__construct()

构造

public function __construct (

    string $dsn,

    string $user,

    string $pwd,

    int $cursor_type = null,

    bool $pconnect = false

)
参数:
名称 说明
dsn 连接的数据库源名称。另外,一个无DSN连接字符串可以使用。
user 用户名
pwd 密码
cursor_type 可选SQL_CUR_USE_IF_NEEDED | SQL_CUR_USE_ODBC | SQL_CUR_USE_DRIVER
pconnect 是否使用长链接,默认false

__destruct()

析构

public function __destruct ()
由于调用closeAll时会关闭所有链接,导致影响close的执行,故析构时并没有将链接关闭,需要时,请手动关闭。

autocommit()

获取或设置自动提交状态

public function autocommit (

    bool $OnOff = null

) : int
参数:
名称 说明
OnOff 当带$OnOff时,True表示开始自动提交,False表示关闭自动提交,null标识获取状态
返回值:

返回状态时开启为非0值,关闭为0值,设置状态则返回结果

closeAll()

关闭所有ODBC连接

public static function closeAll ()

close()

关闭当前ODBC连接

public function close ()

columnprivileges()

列出给定表的列和相关联的特权

public function columnprivileges (

    string $qualifier,

    string $owner,

    string $table_name,

    string $column_name

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符。
owner 所有人,支持%(零个或多个字符)_(1个字符)
table_name 表名,支持%(零个或多个字符)_(1个字符)
column_name 列名,支持%(零个或多个字符)_(1个字符)

columns()

列出指定表中的列名。

public function columns (

    string $qualifier = null,

    string $schema = null,

    string $table_name = null,

    string $column_name = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符。
schema 所有人,支持%(零个或多个字符)_(1个字符)
table_name $table_name 表名,支持%(零个或多个字符)_(1个字符)
column_name 列名,支持%(零个或多个字符)_(1个字符)

commit()

提交ODBC事务

public function commit ()

dataSource()

返回当前连接的信息。

public function dataSource (

    int $fetch_type

) : array
参数:
名称 说明
fetch_type 可选SQL_FETCH_FIRST | SQL_FETCH_NEXT

exec()

执行一个SQL语句,返回结果集

public function exec (

    string $query_string,

    int $flags = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
query_string SQL语句
flags 此参数目前没有使用

foreignkeys()

获取检索外键的列表。

public function foreignkeys (

    string $pk_qualifier,

    string $pk_owner,

    string $pk_table,

    string $fk_qualifier,

    string $fk_owner,

    string $fk_table

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
pk_qualifier 主键限定符。
pk_owner 主键所有者。
pk_table 主键表。
fk_qualifier 外键限定符。
fk_owner 外键所有者。
fk_table 外键表。
返回值:

返回结果集

gettypeinfo()

检索有关数据源支持的数据类型的信息。

public function gettypeinfo (

    int $data_type = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
data_type 数据类型,可用于将信息限制为单个数据类型。
返回值:

返回结果集,错误时返回false

prepare()

设置一个预处理语句

public function prepare (

    string $query_string

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
query_string 预处理语句,支持问号占位符
返回值:

该返回值,可以使用execute()进行实际执行

primarykeys()

获取指定表的主键

public function primarykeys (

    string $qualifier,

    string $owner,

    string $table

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者
table 表名
返回值:

结果集

procedurecolumns()

检索参数到过程的信息

public function procedurecolumns (

    string $qualifier = null,

    string $owner = null,

    string $proc = null,

    string $column = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
proc 过程。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
column 列名。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
返回值:

结果集

procedures()

获取存储在特定数据源中的过程列表。

public function procedures (

    string $qualifier = null,

    string $owner = null,

    string $name = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
name 名称。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
返回值:

结果集

rollback()

回滚当前事务

public function rollback () : bool

setoption()

改变属性

public function setoption (

    int $option,

    int $param

) : bool
参数:
名称 说明
option 属性名
param 属性值

specialcolumns()

获取指定表的索引

public function specialcolumns (

    int $type,

    string $qualifier,

    string $owner,

    string $table,

    int $scope,

    int $nullable

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
type 指定类型,可选SQL_BEST_ROWID | SQL_ROWVER特殊值
qualifier 限定符
owner 所有者
table 表名
scope 命令结果集的作用域。
nullable null选项
返回值:

结果集

statistics()

检索表的统计信息

public function statistics (

    string $qualifier,

    string $owner,

    string $table_name,

    int $unique,

    int $accuracy

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者
table_name 表名
unique 特有属性
accuracy 准确性
返回值:

结果集

tableprivileges()

列出与每个表相关联的表和特权。

public function tableprivileges (

    string $qualifier,

    string $owner,

    string $name

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
name 名称。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
返回值:

结果集

tables()

获取存储在特定数据源中的表名列表。

public function tables (

    string $qualifier = null,

    string $owner = null,

    string $name = null,

    string $types = null

) : \fize\db\middleware\driver\odbc\Statement
参数:
名称 说明
qualifier 限定符
owner 所有者。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
name 名称。此参数接受下列查询模式:”%” 来匹配零到多个字符,”_” 来匹配单个字符。
types 指定类型,“‘TABLE’,’VIEW’” or “TABLE, VIEW”
返回值:

结果集