Mysql常用命令总结

75 篇文章 0 订阅
68 篇文章 0 订阅

     本篇博客,用于自用。如果能够帮到其他小伙伴,那就更好了。

 

     以如下User表为例,讲解Mysql数据库常用的命令。

#创建数据库
CREATE SCHEMA `mybatis_plus` DEFAULT CHARACTER SET utf8;

#创建用户表
CREATE TABLE user (
    id BIGINT(20) PRIMARY KEY NOT NULL COMMENT '主键',
    name VARCHAR(30) DEFAULT NULL COMMENT '姓名',
    age INT(11) DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
    manager_id BIGINT(20) DEFAULT NULL COMMENT '直属上级id',
    create_time DATETIME DEFAULT NULL COMMENT '创建时间',
    CONSTRAINT manager_fk FOREIGN KEY (manager_id) REFERENCES user (id)
)  ENGINE=INNODB CHARSET=UTF8;

#初始化数据:
INSERT INTO user (id, name, age, email, manager_id , create_time)
VALUES (1087982257332887553, '大boss', 40, 'boss@baomidou.com', NULL, '2019-01-11 14:20:20'),
	(1088248166370832385, '王天风', 25, 'wtf@baomidou.com', 1087982257332887553, '2019-02-05 11:12:22'),
	(1088250446457389058, '李艺伟', 28, 'lyw@baomidou.com', 1088248166370832385, '2019-02-14 08:31:16'),
	(1094590409767661570, '张雨琪', 31, 'zjq@baomidou.com', 1088248166370832385, '2019-01-14 09:15:15'),
	(1094592041087729666, '刘红雨', 32, 'lhm@baomidou.com', 1088248166370832385, '2019-01-14 09:48:16');
	

 

 

   以上述表为例,讲解Mysql中常用的语句。

 


-- 建表语句1,缺陷严重,不推荐。创建的user表或许存在多余的字段!
CREATE TABLE test_user(id bigint(20), name varchar(30), 
	age int(4), email varchar(50), 
	manager_id bigint(20), create_time datetime)
AS
SELECT id, name, age, email, manager_id, create_time
FROM user;

-- 建表语句2,有部分缺陷,定义主键、外键等SQL语句丢失.
CREATE TABLE mp_user AS
SELECT id AS user_id, name AS real_name, age, 
		email, manager_id, create_time
FROM user;


-- 给表重命名
ALTER TABLE `user` RENAME TO mp_user;

-- 给表字段进行重命名
ALTER TABLE mp_user CHANGE name real_name VARCHAR(30);

-- 删除列
ALTER TABLE user DROP COLUMN name;

-- 增加列
-- Mysql5.6及以上版本可以为datetime类型字段设置‘CURRENT_TIMESTAMP’默认值
ALTER TABLE user ADD COLUMN update_date datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间';
ALTER TABLE user ADD COLUMN update_date datetime DEFAULT NULL COMMENT '更新时间';
ALTER TABLE user ADD COLUMN size TINYINT NOT NULL DEFAULT '0' COMMENT '尺寸';

-- 修改表注释
ALTER TABLE user COMMENT '用户表';
-- 修改列注释                   
ALTER TABLE user MODIFY COLUMN update_date datetime COMMENT '更新时间2';

-- 改变列的类型
ALTER TABLE user CHANGE size size BIGINT(20) DEFAULT NULL;

 

参考文章: CREATE TABLE 表名 AS SELECT 语句      

                    [linux][mysql] 命令更改表结构:添加、删除、修改字段、调整字段顺序     

                    将Oracle数据库时间字段转成Mysql数据库时间字段    

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值