这是我在学习Mysql之路上做的笔记,今天将它粘出来。这一篇比较基础主要是创建数据库、创建表、修改表、删除表,以及建立约束:非空约束、主键约束、外键约束、唯一值约束。有错误的欢迎大家指出。。。

-- 命令行创建数据库

#1、创建数据库

CREATE DATABASE luo DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

#2、给数据库授权,

#其中密码是可选项;

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON luo.* TO root@localhost_3309 identified by 'root'; 

#删除数据库和#使用数据库

DROP DATABASE luo;
USE luo;

CHAR的长度是固定的,而VARCHAR的长度是可以变化的,

比如,存储字符串“abc",对于CHAR (10),表示你存储的字符将占10个字节(包括7个空字符),而同样的VARCHAR2 (10)则只占用3个字节的长

#创建部门表

CREATE TABLE tb_dept(deptno INT PRIMARY KEY auto_increment COMMENT '部门编号',dname VARCHAR(18) COMMENT '部门名称',loc VARCHAR(100) COMMENT '部门地址')engine=innodb DEFAULT charset=utf8;

#显示表的结构

DESC tb_dept;

#删除表,信息以及结构

DROP TABLE tb_dept;

-- 删除

#DELETE删除表数据,保留表结构,可以回滚

DELETE FROM tb_dept WHERE dname='销售部';

#DROP删除表结构和数据:删除最快,直接从内存删除

DROP TABLE tb_dept;

#TRUNCATE清空一个表数据,不可以回滚

TRUNCATE TABLE tb_dept;

#修改列类型

ALTER TABLE tb_dept MODIFY dname INT;ALTER TABLE tb_dept MODIFY COLUMN dname VARCHAR(18);

#增加列

ALTER TABLE tb_dept ADD COLUMN phone VARCHAR(15);

#删除列

ALTER TABLE tb_dept DROP COLUMN phone;

#更改列名

ALTER TABLE tb_dept CHANGE dname dept_name VARCHAR(18);ALTER TABLE tb_dept CHANGE COLUMN dept_name dname VARCHAR(18);

#更改表名两种方法

ALTER TABLE tb_dept RENAME dept;RENAME TABLE dept TO tb_dept;

-- 1、创建表国家/地区,并确保不会在表格中输入除中国China,美国America,日本Japan之外的任何国家/地区

CREATE TABLE countries(country_id VARCHAR(5) NOT NULL,country_name enum('China','America','Japan') DEFAULT 'China')ENGINE=INNODB DEFAULT charset=utf8;INSERT countries VALUES('1','America');INSERT countries(country_id) VALUES('1');SELECT *FROM countries;DROP TABLE IF EXISTS countries;

建立约束:非空约束、主键约束、外键约束、唯一值约束

#约束:保证数据库的完整性

#1、非空约束 not null

#2、主键约束primary key

/*一个表只允许有一个主键,

作用:唯一确定一行数据的字段

主键可以是一个字段也可以是多字段的组合

当创建主键约束时,MySQL会为主键创建索引

*/

#3、外键约束foreign key

#4、唯一值约束unique

#5、检查约束check在MySQL中不起作用,CHECK子句会被分析,但是会被忽略。

#在建表时建立约束

#创建员工表

CREATE TABLE tb_emp(empno INT PRIMARY KEY auto_increment COMMENT '员工编号',ename VARCHAR(18) NOT NULL COMMENT '员工姓名',job varchar(8) COMMENT '员工职位' enum(),mgr int COMMENT '上级领导',hiredate DATE COMMENT '入职时间',sal int COMMENT '薪资',comm int COMMENT '奖金',phone VARCHAR(18) UNIQUE COMMENT '电话',dept_id int COMMENT '部门编号',CONSTRAINT fk_emp FOREIGN KEY (dept_id) REFERENCES tb_dept(deptno))COMMENT='员工表';

#显示表的结构

DESC tb_emp;

#显示创建表的命令

SHOW CREATE TABLE tb_emp;

#删除表

DROP TABLE tb_emp;

#在建表之后建立约束

#创建员工表

CREATE TABLE tb_emp(empno INT COMMENT '员工编号',ename VARCHAR(18) COMMENT '员工姓名',job VARCHAR(8) COMMENT '员工职位',mgr INT COMMENT '上级领导',hiredate DATE COMMENT '入职时间',sal INT COMMENT '薪资',comm INT COMMENT '奖金',phone VARCHAR(18) COMMENT '电话',dept_id INT COMMENT '部门编号')COMMENT='员工表';

#非空约束NOT NULL

ALTER TABLE tb_emp MODIFY ename VARCHAR(18) NOT NULL;

#删除非空约束

ALTER TABLE tb_emp MODIFY ename VARCHAR(18);

#主键约束PRIMARY KEY

ALTER TABLE tb_emp ADD PRIMARY KEY (empno);

#删除主键约束

ALTER TABLE tb_emp DROP PRIMARY KEY;

#外键约束FOREIGN KEY

ALTER TABLE tb_emp ADDCONSTRAINT fk_emp FOREIGN KEY (dept_id) REFERENCES tb_dept(deptno);

#删除外键约束(外键的名字由MySQL自动非配的,自己给的不起作用,Sql标准要起名)

ALTER TABLE tb_emp DROPFOREIGN KEY fk_emp;

#唯一约束UNIQUE

ALTER TABLE tb_emp ADD UNIQUE(phone);

#删除唯一约束

ALTER TABLE tb_emp DROP INDEX phone;

#修改字段为自动增长

ALTER TABLE tb_empMODIFY empno INT auto_increment;

#取消字段自动增长

ALTER TABLE tb_empMODIFY id INT

MySQL笔记(一)创建数据库、创建表、修改表、删除表,以及建立约束相关推荐

  1. Mysql基础知识:创建、查看、修改和删除表

    Mysql 创建.查看.修改和删除表 1. 创建表 创建表的语法形式: CREATE TABLE 表名 ( 属性名 数据类型 约束条件,属性名 数据类型 约束条件,...) ENGINE=存储引擎名 ...

  2. mysql alter table drop constraint_MySQL添加,修改,删除表的列,约束等表的定义。

    ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename to bbb; 添加列:alter table ...

  3. mysql创建表格1warning_MySQL:创建、修改和删除表

    在说创建.修改和删除表前,我们还是要进行一个操作的简单说明: 1.登陆数据库系统 在命令行中登陆MySQL数据库管理系统,输入一下内容: mysql -h localhost -u root -p 很 ...

  4. 虚拟机mysql创建一个表_MySQL:创建、修改和删除表

    其实对很多人来说对于SQL语句已经忘了很多,或者说是不懂很多,因为有数据库图形操作软件,方便了大家,但是我们不能忘记最根本的东西,特别是一些细节上的东西,可能你用惯了Hibernate,不用写SQL语 ...

  5. mysql创建表时打错了怎么修改_MySQL 创建,修改和删除表

    登录数据库系统: 其中,"-h"参数指连接的主机名,因此此处是连接本机,所以后面的内容为localhost: "-u"参数表示用户名,此处的用户名为 root; ...

  6. SQLite 入门教程(二)创建、修改、删除表

    一.数据库定义语言 DDL 在关系型数据库中,数据库中的表 Table.视图 View.索引 Index.关系 Relationship 和触发器 Trigger 等等,构成了数据库的架构 Schem ...

  7. SQL server——sql命令创建、修改、删除表之记录

    目录 学习内容.sql命令创建.修改.删除表 创建表 指定所属文件组 修改表 增加一列number 更改列属性 删除某一列 重命名表 删除表 分区表 创建表 添加文件组 分别为其添加数据文件 创建分区 ...

  8. sql server基础语法 创建数据库 创建表

    sql server基础语法 创建数据库 创建表 1.创建数据库 2.表的创建 3.在现有表中添加标识列 4.创建外键 5.添加外键 6.约束 7.创建局部临时表 8.创建全局临时表 9.创建具有ch ...

  9. DDL-操作数据库、操作数据表、DML-增加、修改、删除表中数据、DQL-表数据查询

    SQL 语句分类: DDL(Data Definition Language) :数据定义语言.用来操作数据库,表,列等. DML(Data Manipulation Language) :数据操作语 ...

  10. SQL数据库插入、修改、删除及删除表中数据操作示例(insert、update)

    目录: 1.数据库的连接.创建 2.对字段的操作:(alter table) 3.SQL数据库插入.修改.删除操作 4.数据库的查询操作大全(select) 5.多表查询(join on) 6.约束操 ...

最新文章

  1. GitHub 致歉:请再爱我们一次!
  2. 【LeetCode】69. Sqrt(x) (2 solutions)
  3. java设计模式之设计原则②依赖倒置原则
  4. 谈谈HashMap线程不安全的体现
  5. C语言课后习题(27)
  6. 苹果拟明年Q1推出配有mini-LED显示屏的27英寸iMac
  7. HDU - 6033 Add More Zero
  8. linux mint关于web开发的相关环境配置
  9. swagger 使用
  10. hadoop2.X集群安装与应用
  11. Charles的安装及设置
  12. 99乘法表c语言显示坐标,C语言打印九九乘法表
  13. 原生JS实现HTML文件上传,简单实现js上传文件功能
  14. python2 python3 print_python2和python3中print有什么区别
  15. Python 第三方模块 机器学习 Scikit-Learn模块 有监督学习1 交叉分解,高斯过程,保序回归
  16. Docker基本概念
  17. Android-实现邮箱格式的验证
  18. CMU-MOSEI数据集解读
  19. 安卓系统管理软件_2020年了,这些高效率软件你必须得会!
  20. 全球十大外盘外汇交易平台排行榜

热门文章

  1. Opencv3 形态学操作
  2. PlayFrameWork实现文件上传,完整流程
  3. MVC(Java , C# ,php)
  4. Cocos2d-x中使用第三方so库
  5. Linux 开机报 or type Control-D to continue
  6. 【转】8 个效果惊人的 WebGL/JavaScript 演示
  7. CAMoE——屠榜 video retrieval challenge
  8. LG-Transformer:全局和局部建模Transformer结构新作
  9. 最快15分钟,完成高精度AI模型定制开发
  10. ECCV 2020 论文大盘点-光流篇