【Database】数据库适配采坑指南

一、Oracle

1.MODIFY字段时,如果字段nullable原本为NULL或NOT NULL,在ALTER时不能重复设置

2.Oracle关键字使用英文双引号包围

SELECT "KEYWORD_COLUMN" FROM "TABLE_NAME"

3.MODIFY COLUMN语句

ALTER TABLE "SCHEMA_NAME"."TABLE_NAME" MODIFY ("COLUMN_NAME" NVARCHAR(512) NULL,"COLUMN_NAME" NVARCHAR(512) NULL,...)

4.ADD COLUMN语句

ALTER TABLE "SCHEMA_NAME"."TABLE_NAME" ADD ("COLUMN_NAME" NVARCHAR(512 CAHR) NULL,"COLUMN_NAME" NVARCHAR(512 CAHR) NULL,...)

5.DELETE COLUMN语句

ALTER TABLE "SCHEMA_NAME"."TABLE_NAME" DROP ("COLUMN_NAME","COLUMN_NAME",...)

6.当字段为CLOB或者BLOB类型时,不可修改字段类型

7.需要避免使用CLOB大字段,建议使用VARCHAR2(4000)或NVARCHAR2(4000),VARCHAR2/NVARCHAR2默认长度为4000,但12c+版本可以使用命令进行修改

// TODO 数据库修改VARCHAR2/NVARCHAR2长度方法

8.存储中文的时候推荐使用NVARCHAR2,否则会导致中文乱码;如果没有中文可以使用VARCHAR2

9.安装数据库时使用AL32UTF8字符集或中文字符集可以有效避免中文乱码问题

10.在MODIFY COLUMN时,如果设置单位为CHAR则会报错缺失右括号

二、Sqlserver(MSSQL)

1.批量INSERT/UPDATE时,参数不能超过2100个,超过2100个需要手动分片提交;

2.MSSQL关键字需要用中括号进行包围

SELECT [KEYWORD_COLUMN] FROM "TABLE_NAME"

三、MySql

1.MySql关键字需要用反单引号进行包围

SELECT `KEYWORD_COLUMN` FROM "TABLE_NAME"
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值