数据库基本操作
1、CREATE:创建数据库
CREATE DATABASE IF NOT EXISTS 数据库名;
注意DATABASE为单数,因为只创建了一个库,如果想要创建几个库,只能多写几遍该语句。
2.SHOW:查看所有数据库
SHOW DATABASES;
查看所有数据库,因此要+s;
3.use;选择company为当前使用数据库。
USE company;
使用了这个命令,才能在这个数据库下进行相关操作。
4.DROP:删除数据库company
DROP DATABASE company;
DROP DATABASE com1,com2;
删除不在使用的数据库,使用DROP,会删除所有内容。
基本表的基本操作
表是数据库存储数据的基本单元,表由表结构和记录构成,表结构包括列名、数据类型和数据长度等组成。
1.CREATE:创建基本表student_info,表结构如下:
列名 | 数据类型 | 允许NULL值 | 主键 |
学号 | char(4) | 否 | 是 |
姓名 | char(8) | 否 | 否 |
性别 | char(2) | 是 | 否 |
出生日期 | date | 是 | 否 |
家族住址 | varchar(50) | 是 | 否 |
CREATE TABLE `student_info`(学号 char(4) NOT NULL PRIMARY KEY,
姓名 CHAR(8) NOT NULL,性别 CHAR(2),出生日期 DATE,家庭住址 VARCHAR(50))
注意:中文名不能用引号括起来,但可以使用反引号(tab键上面)``括起来,是否为NULL时默认为NULL;
2.INSERT:插入数据
向student_info中插入如下数据:
学号 | 姓名 | 性别 | 出生日期 | 家族住址 |
0001 | 张青平 | 男 | 2000-10-01 | 衡阳市东风路77号 |
0002 | 刘东阳 | 男 | 1998-12-09 | 东阳市八一北路33号 |
0003 | 马晓夏 | 女 | 1995-05-12 | 长岭市五一路763号 |
0004 | 钱忠理 | 男 | 1994-09-23 | 滨海市洞庭大道279号 |
0005 | 孙海洋 | 男 | 1995-04-03 | 长岛市解放路27号 |
0006 | 郭小斌 | 男 | 1997-11-10 | 南山市红旗路113号 |
0007 | 肖月玲 | 女 | 1996-12-07 | 东方市南京路11号 |
0008 | 张玲珑 | 女 | 1997-12-24 | 滨江市新建路97号 |
INSERT INTO student_info
VALUES('0001','张青平','男','2000-10-01','衡阳市东风路77号'),
('0002','马东阳','男',19981209,'东阳市八一北路33号'),
('0003','马晓夏','女',19950512,'长岭路五一路763号'),
('0004','钱忠理','男',19940923,'海滨市洞庭大道279号'),
('0005','孙海洋','男',19950403,'长岛市解放路27号'),
('0006','郭小赋','男',19971110,'南山市红旗路27号'),
('0007','肖月玲','女',19961207,'东方市南京路11号'),
('0008','张玲珑','女',19971225,'滨江市新建路97号');
注意:数据用可以单引号括起来,出生日期我试过了可以有-,也可以没有,但是如果学号不写成'0001'而是写0001没有单引号,查看数据的时候只显示1;
3.查看表结构/数据:
DESC student_info;查看表结构
![](https://img-blog.csdnimg.cn/img_convert/900ae2aa649148cebc426994ee03919f.png)
SELECT *FROM student_info;查看表中所有数据
SELECT 学号 FROM student_info;只查看学号这一列信息,如果要查看多列信息用英文逗号隔开
SELECT DISTINCT 姓名 FROM student_info;去掉姓名相同的行,该操作主要去除重复数据
![](https://img-blog.csdnimg.cn/img_convert/1c56902c6492ffc675166625c52f5815.png)
4.修改表ALTER
修改列的数据类型modify:
修改grade表的“分数”列,使其数据类型为decimal(5,2)。
ALTER TABLE grade MODIFY COLUMN 分数 DECIMAL(5,2);
这里的column译为列,可写可不写
修改列名change:
修改grade表的“分数”列名,改为英语分数
ALTER TABLE grade CHANGE 分数 英语分数;后面还可以追加需要更改的数据类型
#将表employees的mobile字段修改到officeCode字段后面.
ALTERTABLE employees MODIFY mobile VARCHAR(25) AFTER officeCode
注意:change和modify特点:
相同点:都是修改列属性的,执行成功之后都会将新属性替换原有属性
不同点:
modify:是用来修改列属性中较微小的操作的,例如修改列的属性
change:用来修改列属性中幅度变化较大的操作的,例如修改列名
总结:modify只能改字段数据类型完整约束,不能改字段名,但是change可以
添加新列ADD
为student_info表添加一个名为“备注”的数据列,其数据类型为varchar(50)。
ALTER TABLE student_info ADD 备注 VARCHAR(50);
删除列:
删除表stu的“备注”列
ALTER TABLE STU DROP 备注;
5.删除表中数据delete
删除表stu中学号为0004的记录
DELETE FROM stu WHERE 学号='0004';
6.删除表,数据库drop;
DROP TABLE stu;删除表stu:
DROP DATABASE stu;删除数据库stu: