CREATE DATABASE MyEE_2204;
USE MyEE_2204;
CREATE TABLE staff(
ID INT,
NAME VARCHAR(20),
gender VARBINARY(2),
birthday DATE,
email VARCHAR(10),
remark VARCHAR(50)
);
SELECT * FROM staff;
ALTER TABLE staff ADD age INT;
ALTER TABLE staff MODIFY email VARCHAR(50);
ALTER TABLE staff CHANGE NAME username VARCHAR(20);
ALTER TABLE staff DROP remark;
INSERT INTO staff VALUES (1,'tom','n','1994-3-5','151@qq.com',60);
INSERT INTO staff VALUES (2,'ron','n','1996-3-5','151@qq.com',60);
INSERT INTO staff VALUES (3,'lee','n','1997-3-5','151@qq.com',60);
UPDATE staff SET username = "QQ" WHERE ID = 1;
DELETE FROM staff WHERE ID = 2;
ALTER DATABASE MyEE_2204 DEFAULT CHARACTER SET gbk;
SHOW CREATE DATABASE MyEE_2204;
ALTER TABLE staff CHANGE gender gender VARCHAR(2);
UPDATE staff
SET gender = "男";
需要把表格改为gbk 再把n换为男 把之前输入错误的varbinary修改好
库的操作
库名; 直接创建库 create database
mysql> create database EE_2204;
查看库
mysql> show create database ee_2204 ;
修改数据库的字符集
(gbk(中国的中文表:一个中文对应两个字节),utf8(一个中文对应三个字节,支持中简体))
alter database 库名 DEFAULT CHARACTER SET 字符集;
mysql> alter database ee_2204 default character set gbk ;
Query OK, 1 row affected (0.00 sec)
删除库
drop database 库名; 直接删除库
mysql> drop database ee_2204;
表的操作
进入库
mysql> use ee_2204;
Database changed
mysql>
创建表
mysql> create table student(
-> id int, -- id字段 int类型
-> name varchar(10), -- name字段 字符串类型
-> gender varchar(5),-- 性别字段 字符串类型,
-> address varchar(50),-- 地址字段 字符串类型
-> email varchar(50) -- 邮箱字段 字符串类型
-> );
-- 查询表:查询库中的所有的表
show tables ;
--查询表的结构
desc 表名;
mysql> desc student ;
- 修改表的字段名称
-- 语法: alter table 表名 change 旧字段名称 新字段名称 以前的字段类型;
mysql> alter table student change gender sex varchar(5) ;
-- 修改的表的字段类型
-- 语法:alter table 表名 modify 字段名称 新的字段类型;
mysql> alter table student modify email varchar(25) ;
-- 给表中新添加一列(一个新的字段名称)
-- 语法: alter table 表名 add 字段名称 字段类型;
mysql> alter table student add age int;
-- 将表中的某一列(某个字段)删除
-- 语法:alter table 表名 drop 字段名称;
mysql> alter table student drop age ;
-- 复制一张一模一样的表
-- 语法: create table 新的表名 like 旧表名;
mysql> create table teacher like student ;
-- 对表名重命名
-- 语法:alter table 旧表名 rename to 新表名;
mysql> alter table stu rename to student;
-- 删除表
-- 语法: drop table 表名;
mysql> drop table teacher;
sql语句
-- 1)插入数据
-- 语法:插入全部字段,给全部字段进行赋值
-- insert into 表名 values(值1,值2,值3,值4...,值n) ; 一次插入一条
-- 注意:插入的值必须和当前字段顺序要对应,而且还有符号这个字段数据类型
INSERT INTO student VALUES(1,"高圆圆",'女','鄠邑区','919081924@qq.com') ;
-- 语法2:insert into 表名 values
-- (值1,值2,值3,值4...,值n),(值1,值2,值3,值4...,值n)....一次插入多条
INSERT INTO student VALUES(2,"文章",'男','高陵区','wenzhang@163.com'),
语法3:插入部分字段,未插入的字段的默认值就是null
-- insert into 表名(字段名称1,字段名称2,,,) values(值1,值2....) ; 这种写法也支持一次插入多条
INSERT INTO student(id,NAME,sex,address) VALUES(5,"张佳宁","女","鄠邑区"),
(6,"张三丰","男","咸阳市") ;
-- 查询表的记录
SELECT * FROM student ;
dml语句
-- 插入一条数据
INSERT INTO student VALUES(7,'男','王五','西安市','wangwu@163.com') ;
-- 需求:需要id=6的学生的name字段改成 "刘备"
UPDATE student SET NAME = "刘备" WHERE id = 6 ;
-- 需求:需要将id为7的学生的name字段改为 "王五", sex字段 修改为"男"
UPDATE student SET NAME = "王五" ,sex = "男" WHERE id = 7 ;
-- 语法3:一般不用的,批量修改(针对数量比较小的时候)
-- update 表名 set 字段名称= 值;
UPDATE student SET address = "宝鸡市" ;
-- 带个多个条件同时修改
SET NAME = '圆圆'
WHERE
address = '宝鸡市'
AND
sex = '女'
AND
email = '919081924@qq.com' ;
7删除表中指定记录
-- 需求将 id为7的这条记录删除
DELETE FROM student WHERE id = 7 ;
DELETE FROM student ;
删除后表格重头开始自增
TRUNCATE TABLE student ;
删除后 表格从上一次的自增处开始