TP6使用Oracle

查看TP文档时发现,是支持多种数据库的,只需要在配置文件内做好相关配置就好了。
关于Oracle初步的使用发现Oracle没有库的概念有的只是相关的用户,关于Oracle的安装可以去百度或者Google进行搜索即可。

开启扩展

关于PHP开启Oracle扩展的方法,在php.ini文件内将;extension=oci8_11g;的注释;去掉即可,如果没有这个的话可以搜索oci8_找到相关的字样打开即可,如果没有可以去PHP官方扩展找对应你的版本的扩展,安装完成之后记得重启电脑(至少我的重启相关的环境是无效的)

TP配置

查看TP6文档,可以看到只需要在配置的数据库类型里面换为Oracle即可:

TYPE = oracle # 数据库类型
HOSTNAME = localhost
DATABASE = ORCL  ### 这个填写你初始安装Oracle时的那个名字 一般上是不做更改的
USERNAME = system  ### 你的账户名一般上来说都是system
PASSWORD = 123456  
HOSTPORT = 1521  ### 端口号
CHARSET = utf8

.env数据库配置信息如下

注意

初次接触Oracle没有去了解该数据库的相关规则,导致在使用时发现出现了很多很多的错误,譬如:

  • 942 OCIStmtExecute: ORA-00942: 表或视图不存在
  • 904 OCIStmtExecute: ORA-00904: “ADACC”: 标识符无效

    TP框架默认的会将字段转为大写,通过相关查找发现Oracle的表名和字段名默认都是大写的,由于我用的是Navicate,创建表的时候和新建字段的时候是小写,而Navicate自动将我们新建的表名和字段名加上了"",所以在使用小写的时候必须带上""来让框架不进行转义,让他识别就是小写即可:
$map = [
 ['"adacc"', "=", $data['adacc']],
  ['"adpwd"', "=", $data['adpwd']]
];
return self::where($map)->count();
本博客所有文章如无特别注明均为原创。作者:止语复制或转载请以超链接形式注明转自 止语
原文地址《TP6使用Oracle

相关推荐

网友评论(0)