MySQL修改,表结构大幅修改
------------------
create table t_video_file_temp
(
video_id bigint not null comment '视频Id',
file_md5 varchar(64) comment '视频md5',
file_size bigint comment '视频大小',
source_url varchar(500) comment '视频源地址',
file_url varchar(500) comment '视频本地地址',
status tinyint(2) default 0 comment '0待审核,1待采集,2采集中,3采集成功,4采集失败,5上传服务器并转码成功',
check_time timestamp comment '审核时间',
origin tinyint(3) comment '来源',
source_id varchar(50) comment '来源Id',
download_time timestamp comment '下载时间',
service_ip varchar(50) comment '下载服务器标识',
repeat_id bigint comment '重复Id',
repeat_status tinyint(1) default 0 comment '0未检测,1重复,2不重复',
source_img_url varchar(500) comment '图片源url',
img_url varchar(500) comment '图片地址',
primary key (video_id)
);
------------------
1-导入SQL文件
2-建表,执行SQL 。
INSERT INTO `t_video_file_temp`(`video_id`,`file_md5`,`file_size`,`source_url`,`file_url`,`status`,`check_time`,`origin`,`source_id`,`download_time`,`service_ip`,`repeat_id`,`repeat_status`,`source_img_url`,`img_url`)
SELECT v.video_id,f.file_md5 ,f.file_size,f.source_url,f.file_url,f.status,f.check_time,f.origin, ext.source_id ,f.download_time,f.service_ip,f.repeat_id,f.repeat_status,img.source_url,f.file_url
FROM t_video v
JOIN t_video_file AS f ON f.file_id = v.video_file_id
JOIN t_video_ext ext ON ext.video_id = v.video_id
LEFT JOIN t_video_file AS img ON v.img_file_id=img.file_id;
-- t_video状态为4的改为2
update t_video t set t.status = 2 where t.status = 4;
-- 增加字段,审核用户名,是否删除,删除用户名,删除时间
ALTER TABLE `t_video` ADD COLUMN `user_name` varchar(50) ;
ALTER TABLE `t_video` ADD COLUMN `is_delete` tinyint(1) default 0 comment '1删除' ;
ALTER TABLE `t_video` ADD COLUMN `delete_user_name` varchar(50) ;
ALTER TABLE `t_video` ADD COLUMN `delete_time` timestamp NULL default NULL ;
-- 删除主外键,
ALTER TABLE `t_video` DROP FOREIGN KEY `FK_Reference_2`;
ALTER TABLE `t_video` DROP FOREIGN KEY `FK_Reference_3`;
-- 删除视频文件ID ,封面图片ID
alter table `t_video` drop column `img_file_id` ;
alter table `t_video` drop column `video_file_id` ;
alter table `t_video` drop column `userId` ;
-- 修改t_video_file名称 如:t_video_file_qaz 。还原t_video_file_temp表名
alter table t_video_file rename t_video_file_qaz ;
alter table t_video_file_temp rename t_video_file ;
-- t_video_ext 增加字段 发布时间
ALTER TABLE `t_video_ext` ADD COLUMN `release_time` timestamp NULL default NULL ;
-- ---------------------------------------
ALTER TABLE `t_video`
MODIFY COLUMN `video_id` bigint(20) NOT NULL AUTO_INCREMENT FIRST ;
ALTER TABLE `t_video_ext`
MODIFY COLUMN `classification` varchar(30) NULL DEFAULT NULL COMMENT '1搞笑,2美食,3,动物圈,4运动,5鬼畜调教,6美妆,7服饰,8健身,9资讯,10明星,11Korea相关,12电影相关,13电视剧' AFTER `source_url`;
-- 增加外键
ALTER TABLE `t_video_ext` ADD CONSTRAINT `FK_Reference_1` FOREIGN KEY (`video_id`) REFERENCES `t_video` (`video_id`);
-- 增加外键
ALTER TABLE `t_video_file` ADD CONSTRAINT `FK_Reference_5` FOREIGN KEY (`video_id`) REFERENCES `t_video` (`video_id`);
MySQL修改,表结构大幅修改的更多相关文章
- mysql在线修改表结构大数据表的风险与解决办法归纳
整理这篇文章的缘由: 互联网应用会频繁加功能,修改需求.那么表结构也会经常修改,加字段,加索引.在线直接在生产环境的表中修改表结构,对用户使用网站是有影响. 以前我一直为这个问题头痛.当然那个时候不需 ...
- mysql 表的增删改查 修改表结构
四.修改表结构 语法: . 修改表名 ALTER TABLE 表名 RENAME 新表名; . 增加字段 ALTER TABLE 表名 ADD 字段名 数据类型 [完整性约束条件…], ADD 字段名 ...
- MySQL 大数据量修改表结构问题
前言: 在系统正常运作一定时间后,随着市场.产品汪的需求不断变更,比较大的一些表结构面临不得不增加字段的方式来扩充满足业务需求: 而 MySQL 在体量上了千万.亿级别数据的时候,Alter Tab ...
- Mysql学习—查看表结构、修改和删除数据表
原文出自:http://blog.csdn.net/junjieguo/article/details/7668775 查看表结构 查看表结构可以用语句DESCRIBE或SHOW CREATE TAB ...
- mysql 表关系 与 修改表结构
目录 mysql 表关系 与 修改表结构 两张表关系 分析步骤 修改表结构 mysql 表关系 与 修改表结构 两张表关系 多对一 以员工和部门举例 多个员工对应一个部门 foreign key 永远 ...
- 数据库遇到的问题——mysql在线修改表结构大数据表的风险与解决办法归纳
互联网应用会频繁加功能,修改需求.那么表结构也会经常修改,加字段,加索引.在线直接在生产环境的表中修改表结构,对用户使用网站是有影响. 以前我一直为这个问题头痛.当然那个时候不需要我来考虑,虽然我们没 ...
- MySQL数据库如何线上修改表结构
一.MDL元数据锁 在修改表结构之前,先来看下可能存在的问题. 1.什么是MDL锁 MySQL有一个把锁,叫做MDL元数据锁,当对表修改的时候,会自动给表加上这把锁,也就是不需要自己显式使用. 当对表 ...
- mysql修改表结构语句
mysql alter 用法,修改表,字段等信息 一: 修改表信息 1.修改表名 alter table test_a rename to sys_app; 2.修改表注释 alter table ...
- 通过替换frm文件方式修改表结构
版本:5.6.16 在自己的虚拟环境中,测试创建一个表,表结构如下:mysql> drop table yoon_temp;Query OK, 0 rows affected (0.09 sec ...
随机推荐
- 通过三张图了解Redux中的重要概念
上周利用业余的时间看了看Redux,刚开始有点不适应,一下在有了Action.Reducer.Store和Middleware这么多新的概念. 经过一些了解之后,发现Redux的单向数据里的模式还是比 ...
- Eclipse较为常用快捷键
今天在学习Eclipse的使用时,Mark了一些较为常用的快捷键,拿出来和大家分享一下: Ctrl+1 快捷修复 Ctrl+D 快捷删除行 Shift+Enter 在当前行任意位置光标跳转到下一行 C ...
- BestCoder Round #87 1002 Square Distance[DP 打印方案]
Square Distance Accepts: 73 Submissions: 598 Time Limit: 4000/2000 MS (Java/Others) Memory Limit ...
- Zookeeper的学习材料
https://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/ https://www.zhihu.com/question/351 ...
- 装完Centos7提示Initial setup of CentOS Linux 7 (core)(转载)
http://www.th7.cn/system/lin/201603/156762.shtml
- nginx反向代理tomcat访问时浏览器加载失败,出现 ERR_CONTENT_LENGTH_MISMATCH 问题
问题说明:测试机上部署了一套业务环境,nginx反向代理tomcat,在访问时长时间处于加载中,十分缓慢! 通过浏览器调试(F12键->Console),发现有错误ERR_CONTENT_LEN ...
- 定时取数据库的schema,并推送到git服务器
写了个脚本,定时去数据库取schema,并推送到公司的git里. #daily_schema.py #/usr/bin/env python import os import datetime,tim ...
- git工作区、暂存区、版本库之间的关系
区分三者关系 Git最让你迷惑的无非是它里面的各种概念了,如果是刚开始接触Git希望看完本篇介绍之后有一个清晰的认识,笔者认识也有限这里只说说个人对使用Git的感受,说一下它里面的几个最常用的概念的理 ...
- Android动画学习笔记-Android Animation
Android动画学习笔记-Android Animation 3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...
- Qt学习笔记 线程(一)
Qt中的线程是与平台无关的 QThread 提供了创建一个新线程的方法 新建一个线程,继承QThread并重写它的run()当调用 start()函数时会调用重载的run()函数 例: #ifndef ...