mysql导出约束文件_MySQL导出所有Index 和 约束
工作需要,记录一下。
1. 导出创建自增字段语句:
SELECT
CONCAT(
'ALTER TABLE `',
TABLE_NAME,
'` ',
'MODIFY COLUMN `',
COLUMN_NAME,
'` ',
IF(UPPER(DATA_TYPE) = 'INT',
REPLACE(
SUBSTRING_INDEX(
UPPER(COLUMN_TYPE),
')',
1
),
'INT',
'INTEGER'
),
UPPER(COLUMN_TYPE)
),
') UNSIGNED NOT NULL AUTO_INCREMENT;'
)
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'source_database_name' AND
EXTRA = UPPER('AUTO_INCREMENT')
ORDER BY TABLE_NAME ASC
2. 导出所有索引
SELECT
CONCAT('ALTER TABLE `',TABLE_NAME,'` ', 'ADD ',
IF(NON_UNIQUE = 1,
CASE UPPER(INDEX_TYPE)
WHEN 'FULLTEXT' THEN 'FULLTEXT INDEX'
WHEN 'SPATIAL' THEN 'SPATIAL INDEX'
ELSE CONCAT('INDEX `',
INDEX_NAME,
'` USING ',
INDEX_TYPE
)
END,
IF(UPPER(INDEX_NAME) = 'PRIMARY',
CONCAT('PRIMARY KEY USING ',
INDEX_TYPE
),
CONCAT('UNIQUE INDEX `',
INDEX_NAME,
'` USING ',
INDEX_TYPE
)
)
),'(', GROUP_CONCAT(DISTINCT CONCAT('`', COLUMN_NAME, '`') ORDER BY SEQ_IN_INDEX ASC SEPARATOR ', '), ');') AS 'Show_Add_Indexes'
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = 'pbq'
GROUP BY TABLE_NAME, INDEX_NAME
ORDER BY TABLE_NAME ASC, INDEX_NAME ASC
3. 创建删除所有自增字段
SELECT
CONCAT(
'ALTER TABLE `',
TABLE_NAME,
'` ',
'MODIFY COLUMN `',
COLUMN_NAME,
'` ',
IF(UPPER(DATA_TYPE) = 'INT',
REPLACE(
SUBSTRING_INDEX(
UPPER(COLUMN_TYPE),
')',
1
),
'INT',
'INTEGER'
),
UPPER(COLUMN_TYPE)
),
') UNSIGNED NOT NULL;'
)
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'destination_database_name' AND
EXTRA = UPPER('AUTO_INCREMENT')
ORDER BY TABLE_NAME ASC
4. 删除库所有索引
SELECT
CONCAT(
'ALTER TABLE `',
TABLE_NAME,
'` ',
GROUP_CONCAT(
DISTINCT
CONCAT(
'DROP ',
IF(UPPER(INDEX_NAME) = 'PRIMARY',
'PRIMARY KEY',
CONCAT('INDEX `', INDEX_NAME, '`')
)
)
SEPARATOR ', '
),
';'
)
FROM information_schema.STATISTICS
WHERE TABLE_SCHEMA = 'destination_database_name'
GROUP BY TABLE_NAME
ORDER BY TABLE_NAME ASC
mysql导出约束文件_MySQL导出所有Index 和 约束相关推荐
- mysql 导入tsv文件_MySQL导出TSV格式文件
可以使用mysqldump, 也可以使用mysql -e 使用mysqldump 因为要使用到 -T / --tab 参数, 需要先查看mysql设置的secure_file_priv mysql&g ...
- Linux下导出MySQL为SQL文件_MySQL导入导出.sql文件步骤
MySQL导入导出.sql文件步骤如下: 一.MySQL的命令行模式的设置: 桌面->我的电脑->属性->环境变量->新建-> PATH=":path\mysq ...
- mysql导出数据到文件_MySQL导出数据到文件中
一.导出一张表数据 把test_time表中的数据导出成txt 文件 mysql> show global variables like '%secure%';+---------------- ...
- mysql导出nb3文件_MySQL导入导出.sql文件
有时候我们需要对数据库备份为sql文件,本文介绍MySQL导入导出.sql文件的方法. 方法一:使用命令行(Windows) 导出: 使用mysqldump工具(此文件在mysql的bin目录下,因此 ...
- mysql导出csv数据_mysql 导出 csv数据命令
mysql 导出 csv数据命令 导出 select field1,field2,field3 from tablename into outfile '/home/output1.csv' fiel ...
- mysql导出d盘_mysql 导出导入数据库
一.导出数据库 1.进入MySQL目录下的bin文件夹 运行cmd :在窗口输入命令 d: 进入d盘:输入 cd Program Files\MySQL\MySQL Server 5.7\bin 命令 ...
- mysql导出文件名乱码_Mysql导出导入乱码问题解决
MySQL从4.1版本开始才提出字符集的概念,所以对于MySQL4.0及其以下的版本,他们的字符集都是Latin1的,所以有时候需要对mysql的字符集进行一下转换,MySQL版本的升级.降级,特别是 ...
- 服务器怎么导出数据库文件,怎么导出服务器数据库文件
怎么导出服务器数据库文件 内容精选 换一换 确认后点击确认即可,导出内容参考表1.选择界面 MongoDB官网提供了针对不同操作系统的客户端安装包,其二进制安装包下载页面链接为:https://www ...
- mysql 导入.sql文件_MySQL导入.sql文件及常用命令
MySQL导入.sql文件及常用命令 在MySQL Qurey Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> so ...
最新文章
- PNAS:微生物组分析揭示人类皮肤的独特性
- R语言可视化R原生plot函数与ggplot可视化结果组合、整合输出实战:原生R绘图plot函数可视化、ggplot2包可视化、R原生plot函数与ggplot可视化结果组合
- 多列转多行sql oracle,sql多行转多列,中文没办法聚集的有关问题
- phoenix 开发API系列(二)phoenix 各类 api 实现方式
- 连接mysql数据库,创建用户模型
- IOS15给UICollection添加测试数字
- 设置edittext不自动获取焦点
- “相当一部分”HPE公司OpenStack工作人员被转移至SUSE
- vue中this.init用法_Vue中的this.$options.data()和this.$data用法说明
- python ConfigParser模块详解
- SAP License:ERP的实施要点
- 几个简单的Makefile
- Forms(The Definitive Guild to Django)
- python 实现Hadoop的partitioner和二次排序
- 针对HTTPS网页打开缓慢或者打不开的问题
- 可道云、NextCloud和Seafile使用体验比较哪个好用
- Eclipse中开发测试脚本
- 杂谈——最好用的数学神器Mathpix Snip,不接受反驳 :)
- RC低通滤波器截止频率公式推导
- 董卿:闲暇时光才是人生精华,这几个优质号一生必读
热门文章
- 将CSS CLIP属性应用在:扩展覆盖效果
- jquery proxy delegate 的比较
- 项目遇到OpenSessionInViewFilter的默认sessionFactoryBeanName的问题
- 使用PowerDesinger 正向工程
- [导入]Silverlight 的 Data Bindings:Silverlight 與 ASP.NET Ajax
- HDU2110 Crisis of HDU【母函数】
- CCF201709-4 通信网络(100分)【DFS+BFS】
- I00013 鸡兔同笼
- 计算机设计思想 —— 类比、建模与隐喻(同构)
- 尔雅/广雅 —— 古代的字典