mysql-- 查询库和表相关信息

mysql 查询库和表相关信息

1、查询库 schema

select database();

2、查询库所有表

show tables;

3、查询表创建信息

SELECT
	table_schema,
	table_name,
	table_comment,
	table_type,
	table_collation,
	create_time 
FROM
	information_schema.TABLES 
WHERE
	table_schema = 'schema' 
	AND table_type = 'BASE TABLE' 
ORDER BY
	create_time ASC;

4、查询表结构信息

show create table tableName;

5、查询表数据

select * from tableName;

6、查询表列信息

SELECT
	* 
FROM
	information_schema.COLUMNS 
WHERE
	table_schema = 'schema' 
	AND table_name = 'tableName' 
ORDER BY
	ordinal_position;

7、查询表主键

SELECT
	column_name 
FROM
	INFORMATION_SCHEMA.`KEY_COLUMN_USAGE` 
WHERE
	CONSTRAINT_SCHEMA = 'schema' 
	AND table_name = 'tableName' 
	AND constraint_name = 'PRIMARY' 
ORDER BY
	ORDINAL_POSITION;   

8、查询表所有索引

 SELECT
 	* 
 FROM
 	INFORMATION_SCHEMA.STATISTICS 
 WHERE
 	TABLE_SCHEMA = 'schema';
 
 AND TABLE_NAME = 'tableName';

9、查询表索引,拼接删除索引语句

SELECT
	CONCAT( 'ALTER TABLE ', i.TABLE_NAME, ' DROP INDEX ', i.INDEX_NAME, ' ;' ) 
FROM
	INFORMATION_SCHEMA.STATISTICS i 
WHERE
	TABLE_SCHEMA = 'schema' 
 	AND TABLE_NAME = 'tableName';
	AND i.INDEX_NAME <> 'PRIMARY';

10、 添加字段

多个字段可以逗号,分开

ALTER TABLE tableName
ADD COLUMN  column1 varchar(2) NULL DEFAULT 1  COMMENT 'column1' ,
ADD COLUMN  column2 varchar(255) NULL COMMENT 'column2';

11、修改字段

多个字段可以逗号,分开

ALTER TABLE tableName
MODIFY COLUMN column1 int(10) NOT NULL  auto_increment COMMENT 'column1' ,
MODIFY COLUMN column2 varchar(255) NULL DEFAULT NULL  COMMENT 'column2' ,
MODIFY COLUMN column3 int(10) NOT NULL DEFAULT 200  COMMENT 'column3' ;

12、删除字段

多个字段可以逗号,分开

ALTER TABLE tableName 
DROP COLUMN column1,
DROP COLUMN column2,
DROP COLUMN column3;

13、添加索引

13.1、唯一索引

ALTER TABLE `tableName` ADD UNIQUE KEY `indexName` (`column`) COMMENT 'index comment' ;

13.2、普通索引

ALTER TABLE `tableName` ADD INDEX `indexName1` (`column1`) ;
ALTER TABLE `tableName` ADD INDEX `indexName2` (`column2`) ;
ALTER TABLE `tableName` ADD INDEX `indexName3` (`column3`,`column4`) ;

14、添加主键

 ALTER TABLE tableName ADD PRIMARY KEY ( 'column' ); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值