MYSQL获取数据库名、表注释、表名、备份

– 查看获取表内字段注释:
show full columns from tablename;
– 或是
show full fields from tablename;
– 或是,在元数据的表里面看
Select COLUMN_NAME 列名, DATA_TYPE 字段类型, COLUMN_COMMENT 字段注释
from INFORMATION_SCHEMA.COLUMNS
Where table_name = ‘companies’##表名
AND table_schema = ‘testhuicard’##数据库名
AND column_name LIKE ‘c_name’##字段名

– 2-1查看表注释的方法:
show  create  table  tablename;

– 2-2获取整个数据库的所有表信息(包含表名,表注释,表类型等等):
SELECT table_name, table_type, engine
FROM information_schema.tables
WHERE table_schema = ‘db5’ //table_schema是数据库名
ORDER BY table_name DESC;
– 该语句请求按逆向字母顺序列出数据库db5中的所有表,但仅显示三种信息:表名,表类型,以及表引擎。
– INFORMATION_SCHEMA是信息数据库,其中保存着关于MySQL服务器所维护的所有其他数据库的信息.

SELECT TABLE_COMMENT FROM INFORMATION_SCHEMA.TABLES  WHERE TABLE_NAME = ‘sh_goods’ AND TABLE_SCHEMA = ‘sh_shop’;//获取sh_shop 数据库中 sh_goods 表 的注释。

– 2-3获取表注释或是
– 或者使用:
show table status;
– Comment 就是表注释。

– 拓展:

– 修改表的注释:
alter table test1 comment ‘修改后的表的注释’;

– 修改字段的注释:
alter table test1 modify column field_name int comment ‘修改后的字段注释’;


当面对可能存在的大数据,不能把所有数据放在一张表里,否则会影响到查询效率,那么我们需要对数据库进行分表分区,例如一天一张表,当插入数据时,判断表是否存在,不存在则创建新表,并进行数据插入。

如果我们需要在程序中通过sql语句查询来获得存在的数据库,以及某个数据库的所有表名,可以这样写:

#查询所有的数据库名称
SELECT SCHEMA_NAME AS Database FROM INFORMATION_SCHEMA.SCHEMATA;

#查询指定数据库下的所有表名(例如sw_wbdlp_basic_db_v1数据库下的所有表名)

select table_name from information_schema.TABLES where TABLE_SCHEMA=‘sw_wbdlp_basic_db_v1’ and TABLE_TYPE = ‘base table’;
执行结果:

获取数据库名:

表名:

不同数据库备份复制表的sql

复制代码
Sql server :
select * into table_new from table_old ; 复制结构和数据
select * into table_new from table_old where 1=2;只复制结构
Oracle:
create table table_new as select * from table_old;复制结构和数据
create table table_new as select * from table_old where 1=0;只复制结构
DB2:
–复制表结构
create table table_name_new as (select * from table_name_old) definition only;
复制代码

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值