ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

zb_对表操作

2022-05-26 23:33:15  阅读:183  来源: 互联网

标签:对表 zb dept emp KEY 操作 TABLE NULL ALTER


目录

查看表

# 进入数据库
USE myBD
# 查看所有表
SHOW TABLES;
+----------------+
| Tables_in_mybd |
+----------------+
| dept           |
| emp            |
+----------------+
# 查看库中表的信息
SHOW TABLE STATUS;
# 查看dept表创建信息,查看外键名
SHOW CREATE TABLE dept;
+-------+------------------------------------------+
| Table | Create Table                             |
+-------+------------------------------------------+
| dept  | CREATE TABLE `dept` (
  `deptno` char(2) NOT NULL,
  `dname` varchar(14) DEFAULT NULL,
  `loc` varchar(13) DEFAULT NULL,
  PRIMARY KEY (`deptno`),
  UNIQUE KEY `dname` (`dname`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8               |
+-------+------------------------------------------+
# 查看dept的结构
DESC emp;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| empno    | char(4)      | NO   | PRI | NULL    |       |
| ename    | varchar(10)  | YES  |     | NULL    |       |
| job      | varchar(9)   | YES  |     | NULL    |       |
| mgr      | char(4)      | YES  |     | NULL    |       |
| hiredate | date         | YES  |     | NULL    |       |
| sal      | decimal(7,2) | YES  |     | NULL    |       |
| comm     | decimal(7,2) | YES  |     | NULL    |       |
| deptno   | char(2)      | YES  | MUL | NULL    |       |
+----------+--------------+------+-----+---------+-------+
# 启动innodb引擎
# create table user()ENGINES=INNODB DEFAULT CHARSET=utf8mb4;
/*------------------------删除表-------------------------*/
DROP TABLE table_name ;

创建表

CREATE TABLE emp (
empno CHAR(4) AUTO_INCREMENT PRIMARY KEY,/*[字段级约束]*/
ename VARCHAR(10),
job VARCHAR(9),
mgr CHAR(4) DEFAULT '未知' ,
hiredate DATE,
sal DECIMAL(7,2),
comm DECIMAL(7,2),
deptno CHAR(2),
PRIMARY KEY(empno,ename),
FOREIGN KEY(deptno) REFERENCES dept(deptno)/*[表级约束] 与dept表关联*//*最后一个后面不能有逗号*/
);
CONSTRAINT fr_stuno FOREIGN KEY(deptno) REFERENCES dept(deptno)# CONSTRAINT 约束名称,一般系统自动,你可以自己改
DEFAULT# 默认值
AUTO_INCREMENT # 自增
decimal(7,2) # 精准数据类型 7表示有效数字位数,2是小数位数

修改表

# ------修改表名------
ALTER TABLE 旧表名 RENAME TO 新表名;
# ------对列操作------
# ---添加 ADD---
ALTER TABLE dept ADD COLUMN dtelephone CHAR(11);/*增加一列dtelephone CHAR(11)*/
ALTER TABLE emp ADD PRIMARY KEY(empno);/*添加主键*/
ALTER TABLE emp ADD FOREIGN KEY(deptno) REFERENCES dept(deptno);/*添加外键*/
# ---删除 DROP---
ALTER TABLE emp DROP COLUMN hiredate;/*删除emp表的hiredate列*/
ALTER TABLE emp DROP PRIMARY KEY;/*删除表主键*/
# ---修改 MODIFY与CHANGE---
# --MODIFY修改属性--
/*ALTER TABLE 表名 MODIFY 字段名 数据类型 约束*/
ALTER TABLE employee MODIFY comm DECIMAL(8,1);/*emp表comm列的数据类型修改为DECIMAL (8,1)*/
ALTER TABLE stuinfo MODIFY stuaddress VARCHAR(60) DEFAULT `地址不详` ;/*给stuinfo表的stuaddress列设默认值:地址不详*/
# -移动-  FIRST|AFTER 把emp表中的comm列移动sal列之后
ALTER TABLE employee MODIFY comm DECIMAL (7,2) AFTER sal;
# --CHANGE修改属性--
ALTER TABLE 表名 CHANGE 原列名 新列名 新数据类型;
# change用来字段重命名,不能修改字段类型和约束;
# modify不用来字段重命名,只能修改字段类型和约束;

删除表

DROP TABLE 表名;

六种约束

/*MySQL的六种约束*/
PRIMARY KEY/*主键约束,若主键由多个属性组成要定义成表级*/
FOREIGN KEY/*外键约束,定义成表级*/
UNIQUE/*唯一约束:允许NULL值;非主键(多)字段值唯一;可定义多个*/
NOT NULL/*非空约束,只能字段级*/
DEFAULT/*默认约束,只能字段级*/
CHECK(stuscore between 0 and 100)/*范围between..and..,..and..,..or..*/

标签:对表,zb,dept,emp,KEY,操作,TABLE,NULL,ALTER
来源: https://www.cnblogs.com/naitiam/p/16315872.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有