检查数据库实例大小写敏感信息

详解达梦数据库字符串大小写敏感_sql

场景一、初始化数据库实例为大小写敏感库

详解达梦数据库字符串大小写敏感_DM8_02

DDL操作

详解达梦数据库字符串大小写敏感_DM8_03

详解达梦数据库字符串大小写敏感_数据库_04

详解达梦数据库字符串大小写敏感_DM8_05

详解达梦数据库字符串大小写敏感_DM8_06

总结:

大小写敏感的数据库中:

创建表时:

①如果不对表名或列名添加"",那么表名和列名都自动转换为大写形式;

②如果对表名或列名添加"",会固定书写时的大、小写形式,书写时采取的是小写形式,那么就定型为小写形式,其他不添加""的则自动转换为大写形式,无论书写时采取的是大写形式或小写形式。

③同名的数据库对象,如果大小写不同,那么则为两个不同的对象,字段同样如此;

④一个表中,即使是相同的字段名,只要大小写不同,允许存在同名且不同大小写形式的字段。

OTHERS操作

详解达梦数据库字符串大小写敏感_DM_07

详解达梦数据库字符串大小写敏感_数据库_08

详解达梦数据库字符串大小写敏感_sql_09

总结

大小写敏感的数据库中:

 DML或DDL操作时:

①  如果不对表名或列名添加"",那么表名和列名都自动转换为大写形式;

②对表进行DML操作时,如果没有小写形式的字段,不能采取小写加""的形式指定过滤字段,会被认定为无效的字段;

③如果对表名或列名添加"",会固定书写时的大、小写形式,""中是大写形式,则过滤字段就是大写字段,""中是小写字段,则过滤字段就是小写字段;

④对其进行DML操作时,需要利用""指定表名和字段名,否则默认会认定以大写形式去查询对象。

⑤查询时,''和""界定符中字符串区分大小写,界定符中的字符串若是大写形式,那仅查询这个大写形式的对象,若是或小写形式,那仅查询这个小写形式的对象,DML操作依旧。

场景二、数据库为大小写不敏感库

详解达梦数据库字符串大小写敏感_达梦数据库_10

DDL操作

详解达梦数据库字符串大小写敏感_DM8_11

详解达梦数据库字符串大小写敏感_DM8_12

详解达梦数据库字符串大小写敏感_数据库_13

详解达梦数据库字符串大小写敏感_sql_14

总结

大小写不敏感的数据库中:

创建表时:

①无论对不对表名或列名添加"",表名和列名的大小写形式不会发生变化,大写形式就是大写形式,小写形式就是小写形式;

②不允许存在同名的数据库对象,即使大小写不同,默认也只能存在一个;

③一个表中,也不允许相同的字段名,即使大小写不同;

④查询时,''和""界定符不区分大小写,界定符中的查询或过滤条件即使是大写或小写,都可以查询到预期的结果集。

OTHERS操作

详解达梦数据库字符串大小写敏感_达梦数据库_15

详解达梦数据库字符串大小写敏感_sql_16

详解达梦数据库字符串大小写敏感_达梦数据库_17

详解达梦数据库字符串大小写敏感_数据库_18

总结

大小写不敏感的数据库中:

DML或DDL操作时:

①无论对不对表名或列名添加"",表名和列名的大小写形式不会发生变化,大写形式就是大写形式,小写形式就是小写形式;

②不允许存在同名的数据库对象,即使大小写不同,默认也只能存在一个;

③一个表中,也不允许相同的字段名,即使大小写不同;

④查询时,''和""界定符不区分大小写,界定符中的查询或过滤条件即使是大写或小写,都可以查询到预期的结果集,进行DML操作时依旧。