信创之路数据库人大金仓篇

概要

信创大势所趋,吾等上下求索

参考文档
Linux:人大金仓数据库-KingBaseES V8与 php7的连接配置
laravel9适配人大金仓(kingbase)数据库
thinkphp6适配人大金仓(Kingbase)数据库

数据库选型

目前比较有名的国产数据库听到的有两个,一个是达梦,一个是人大金仓。我们在做选型的时候为了更好的适配现有的代码,选择了人大金仓。 原因是人大金仓是以pgsql为基础的,而市面上大部分的语音框架都能支持pgsql。

安装数据库

去人大金仓官网下载即可,安装还是比较简单的,我安装了最新的V9版本,需要注意的是许可文件要下载对应版本,别搞混了。安装完成后是可以用它自带的工具进行可视化管理,当然也可以用传统的navicat进行管理,新建连接的时候选pgsql就行。
在这里插入图片描述

适配php

人大金仓目前官网的提供的php扩展,只支持5.6和7.2,而且是线程安全的版本,这个多少让我初次调试的时候踩了很多坑。通过这篇文章,里面提到的其他驱动版本,我进行了php8.1的适配,但效果不佳,无奈之余通过官网加入了QQ技术群。 通过和群里的大佬一连串沟通,终于拿到了php8.1的扩展,成功连接上了数据库。扩展传送门。
可以使用下面的代码进行单元测试

<?php
$dsn = 'kdb:host=192.168.0.34;dbname=test;port=54321';
$user = 'system';
$password = 'xxxxxxx';
$dbh = null;
try {$dbh = new PDO($dsn,$user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
} catch (Exception $e) {echo 'Connection Failed: ' . $e->getMessage() ."\n";
}if(!$dbh){echo "Error : Unable to open database\n";
} else {echo "Opened database successfully\n";
}
$sql = 'create table "users"("id" SERIAL primary key,"user_name" VARCHAR(20),"created_at" TIMESTAMP,"updated_at" TIMESTAMP DEFAULT now()::timestamp(0))';
$result = $dbh->exec($sql);
?>

适配laravel9

因为人大金仓以pqsql为基础,而laravel9是支持pqsql的,所以可以参考pqsql进行驱动类的构建,这里已经有大神网友做了总结,我试了下,可以顺利使用。

小结

  1. 安装驱动是整个过程中最难的一步,涉及到的知识点也比较多,当然最重要的还是拿到争取的驱动包
  2. 适配注意事项:
    不支持default
    不支持DB:raw这种写法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/144501.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django(七、模型层)

文章目录 模型层模型层前期准备使用django ORM要注意 代码演示&#xff1a;切换MySQL数据库如何查看django ORM 底层原理&#xff1f; 单表操作模型层之ORM常见关键字基础的增删改查常用的关键字 常见的十几种查询基于双下滑线的查询 模型层 模型层前期准备 使用django ORM要…

ATE测试工程师的薪资前景如何?能转DFT工程师吗?

在芯片行业&#xff0c;ATE测试工程师扮演着至关重要的角色。他们不仅需要理解电路和芯片内部的工作原理&#xff0c;还需要利用各种测试工具和方法对芯片进行精确的测试和分析。那么ATE测试工程师前景如何&#xff1f;需要具备哪些技能要求呢&#xff1f; 首先来了解什么是AT…

【技巧】Windows 11 如何安装日文语言包和日文系统

Windows 11 如何安装日文语言包和日文系统 安装日语语言第一步&#xff1a;打开系统设置第二步&#xff1a;选择【时间和语言】选项第三步&#xff1a;点击【添加语言】按钮第四步&#xff1a;输入语言&#xff0c;并选择第五步&#xff1a;安装输入法/语言包第六步&#xff1a…

电池故障估计:Realistic fault detection of li-ion battery via dynamical deep learning

昇科能源、清华大学欧阳明高院士团队等的最新研究成果《动态深度学习实现锂离子电池异常检测》&#xff0c;用已经处理的整车充电段数据&#xff0c;分析车辆当前或近期是否存在故障。 思想步骤&#xff1a; 用正常电池的充电片段数据构造训练集&#xff0c;用如下的方式构造…

php在线审稿系统mysql数据库web结构layUI布局apache计算机软件工程网页wamp

一、源码特点 php在线审稿系统是一套完善的web设计系统mysql数据库 &#xff0c;对理解php编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。 php在线审稿系统 代码 https://download.csdn.net/download/qq_41221322/885…

如何提高说服力?

说服力绝对不是吵架&#xff0c;不是谁的嗓门大就赢&#xff0c;这里说的说服力更多是基于丰富的知识&#xff0c;理论和超强的逻辑表达能力&#xff0c;除了从“理”的角度起到说服效果&#xff0c;更需要从影响和权威的角度产生信服。 说服力和影响力的测评&#xff0c;主要…

埋点上报系统

埋点类型分类&#xff1a; 在埋点中&#xff0c;主要埋点类型有点击埋点、曝光埋点&#xff0c;也可以具体定义业务上的埋点&#xff0c;比如下单埋点&#xff0c;加购埋点等。 其中&#xff0c;曝光事件通常在用户浏览应用或网站时触发。当用户进入一个页面或滚动页面时&…

【python】Django——django简介、django安装、创建项目、快速上手

笔记为自我总结整理的学习笔记&#xff0c;若有错误欢迎指出哟~ 【Django专栏】 Django——django简介、django安装、创建项目、快速上手 Django——templates模板、静态文件、django模板语法、请求和响应 Django——连接mysql数据库 Django——django安装、创建django项目、dj…

字母不重复的子串-第15届蓝桥第二次STEMA测评Scratch真题精选

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第158讲。 第15届蓝桥第2次STEMA测评已于2023年10月29日落下帷幕&#xff0c;编程题一共有6题&#xff0c;分别如下&am…

解决:Android TextView 设置斜体后右侧文字被遮挡

一、问题说明 遇到一个比较奇怪的情况&#xff0c;给 TextView 文字设置倾斜后&#xff0c;右侧的文字会被遮挡&#xff0c;感觉这应该是 Android 的一个 bug &#xff01; 上代码&#xff1a; <TextViewandroid:id"id/tv_title"android:layout_width"wra…

windows与wsl互传文件

1.把windows上的文件传到wsl中&#xff0c;\\wsl.localhost\Ubuntu-22.04\mnt\wsl 将你要传的文件放到wsl这个路径下&#xff0c;Ubuntu-22.04是我的子系统&#xff0c;换成自己对应的 2.把wsl中的文件传到windows中 将wsl中的文件放到 /mnt/c 或 /mnt/d 中&#xff0c;这两…

小红书直播开启新纪元,拓世法宝AI直播一体机助您轻松成为行业标杆!

2023年&#xff0c;小红书终于成功坐上了电商牌桌。 今年3月的“董洁效应”带动了一批品牌商家、博主入驻小红书试水&#xff0c;其直播业务积蓄了巨大势能。10月15日&#xff0c;“初代名媛”章小蕙完成了在小红书的第二场直播&#xff0c;以销售额破亿的成绩打响了小红书双1…

大厂必备的6款React UI框架

优秀的ReactUI框架可以为您节省开发时间&#xff0c;提高开发效率&#xff0c;统一设计语言。你还在为你的项目寻找高质量的ReactUI框架吗&#xff1f;为了让您更容易找到易于使用的UI框架&#xff0c;分享6个优秀的ReactUI框架选项&#xff0c;并介绍了每个UI框架的不同功能和…

WPF中的App类介绍

在WPF (Windows Presentation Foundation) 应用程序中&#xff0c;App 类扮演着很重要的角色。这个类通常在每个WPF应用程序中都会有&#xff0c;并且生成在App.xaml文件和其代码后台App.xaml.cs中。App类通常继承自System.Windows.Application类&#xff0c;并且有以下的主要职…

Google 向中国开发者开放数百份 TensorFlow 资源

Google 的机器学习框架 TensorFlow 自 2015 年开源后&#xff0c;已然成为 AI 领域最受欢迎的框架。 据统计&#xff0c;在广受欢迎的 Python 编程语言在线软件知识库 PyPi 上&#xff0c;TensorFlow 的下载次数已超过 90 万&#xff0c;其中有 15% 来自中国。谷歌官方博客也表…

分布式事务解决方案

分布式事务解决方案 百度安全验证 分布式事务解决方案 【精选】这六种目前最常见分布式事务解决方案&#xff01;请拿走不谢-CSDN博客

Android问题笔记四十四:关于RecyclerView出现Inconsistency detected崩溃

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分享&…

AppLink上的小鹅通能实现什么操作呢?

AppLink实现小鹅通信息同步操作 本篇文章给大家演示下小鹅通可在AppLink平台上快速实现的同步操作&#xff0c;1.用户注册或更换手机号信息同步 2.小鹅通产生新的购买订单&#xff0c;订单信息同步。 以下操作均需获得小鹅通授权 授权后登录AppLink操作台&#xff0c;在【我的…

ajax异步传值以及后端接收参数的几种方式

异步传值 第一种呢&#xff0c;也是最简单的一种&#xff0c;通过get提交方式&#xff0c;将参数在链接中以问号的形式进行传递 // 前台传值方法 // 触发该方法调用ajaxfunction testAjax(yourData) {$.ajax({type: "get", // 以get方式发起请求url: "/yo…

HackTheBox-Starting Point--Tier 2---Included

文章目录 一 Included 测试过程1.1 打点1.2 横向移动1.3 权限提升 二 题目 一 Included 测试过程 1.1 打点 1.端口扫描 nmap -sV -sC 10.129.193.212.访问web站点 3.文件包含漏洞探测 观察请求地址&#xff1a;http://10.129.193.21/?filehome.php&#xff0c;利用file参数动…