postgresql

postgresql数据库兼容问题

将mysql数据转到postgres,原tinyint类型会转成int2类型,这时实体属性是布尔类型 ,会导致插入数据失败

处理方案:

添加postgres数据转化规则(登录postgres 切换到自己的数据库,依次执行以下代码即可)

create or replace function bool_to_int(boolean) returns int2 as $$  
select CAST($1::int as int2);
$$ language sql strict;
create cast (bool as int2) with function bool_to_int(boolean) as implicit; 

postgresql在linux下操作相关

常规操作


$ \h:查看SQL命令的解释,比如\h select。
$ \?:查看psql命令列表。
$ \l:列出所有数据库。
$ \c [database_name]:连接其他数据库。
$ \d:列出当前数据库的所有表格。
$ \d [table_name]:列出某一张表格的结构。
$ \du:列出所有用户。
$ \e:打开文本编辑器。
$ \conninfo:列出当前数据库和连接的信息。

切换到数据库用户

su postgres

进入指定库

psql -U postgres -d gansu_earthquake_prevention -h 119.45.11.159 -p 5432

PS.-U后边是用户名,-d后边是要进入的库明,-h后边是数据库服务器地址,-p后边是数据库端口号

postgresql在spring环境下配置


          url: jdbc:postgresql://127.0.0.1:5432/thingsboard?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
          username: postgres
          password: a123456
          driver-class-name: org.postgresql.Driver
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐