sql语句操作规范:
- 表名为小写字母时:表名为小写、大写、大小写混合都行。
- 表名为大写字母时:表名只能为大写。
- 表名为大小写混合时:表名只能为大写。
- 字段名为小写字母时:查询时字段名为小写、大写、大小写混合都行。
- 字段名为大写字母时:查询时字段名只能为大写。
获取所有表名:
select tablename FROM pg_tables WHERE tablename NOT LIKE 'pg%'
AND tablename NOT LIKE 'sql_%' ORDER BY tablename;
select table_name from INFORMATION_SCHEMA.TABLES WHERE table_catalog = '数据库名' and
table_type = 'BASE TABLE' AND table_name NOT LIKE 'pg%'
AND table_name NOT LIKE 'sql_%'
获取视图名:
SELECT SCHEMA_NAME from information_schema.schemata WHERE SCHEMA_NAME NOT LIKE 'pg%'
AND SCHEMA_NAME NOT LIKE 'information%'
同时获取表名和模式名:
select table_schema,table_name from INFORMATION_SCHEMA.TABLES WHERE table_type = 'BASE TABLE'
AND table_name NOT LIKE 'pg%' AND table_name NOT LIKE 'sql_%'
SELECT schemaname,tablename FROM pg_tables WHERE tablename NOT LIKE 'pg%'
AND tablename NOT LIKE 'sql_%'
获取某一模式下的表名:
select table_name from INFORMATION_SCHEMA.TABLES Where table_schema = 'ldgx_36_jiangxi'
and table_catalog = 'postgres' and table_type = 'BASE TABLE'
更改表名的语法:
ALTER TABLE ldgx_34_anhui.ldgx2016_p RENAME TO "2016_p" //特殊表名需要"",且新名字不能 加模式名
ALTER TABLE "ldgx_34_anhui"."2016_p" RENAME TO "ldgx2016_p" //=
ALTER TABLE "ldgx_34_anhui"."2016_p" RENAME TO ldgx2016_p