----------------------------------
1.数据库及表操作
1.1.创建、删除、查看数据库
----------------------------------
-- 01.查看mysql服务器中所有数据库
show databases;
-- 02.进入某一数据库(进入数据库后,才能操作库中的表和表记录)
-- 语法:USE 库名;
use student;
-- 查看已进入的库
show databases;
use student;
-- 03.查看当前数据库中的所有表
-- 先进入某一个库,再查看当前库中的所有表
use student;
show tables;
-- 0x.创建mydb1库;
create database mydb1;
-- 04.删除mydb1库
-- 语法:DROP DATABASE 库名;
drop database mydb1;
-- 思考:当删除的库不存在时,如何避免错误产生?如果存在则删除 不存在则不删
drop database if exists mydb1;
-- 05.重新创建mydb1库,指定编码为utf8
-- 语法:CREATE DATABASE 库名 CHARSET 编码;
create database mydb1 charset utf8;
-- 需要注意的是,mysql中不支持横杠(-),所以utf-8要写成utf8;
-- 如果不存在则创建mydb1;
create database if not exists mydb1;
-- 06.查看建库时的语句(并验证数据库库使用的编码)
-- 语法:SHOW CREATE DATABASE 库名;
show create database mydb1;
----------------------------------
1.2.创建、删除、查看表
----------------------------------
-- 07.进入mydb1库,删除stu学生表(如果存在)
-- 语法:DROP TABLE 表名;
use mydb1;
drop table if exists stu;
-- 08.创建stu学生表(编号[数值类型]、姓名、性别、出生年月、考试成绩[浮点型]),建表的语法: DATA DATE
CREATE TABLE 表名(
列名 数据类型,
列名 数据类型,
...
列名 数据类型
);
create table stu(
id int(4),
name varchar(50),
gender char(2),
birthday DATE,
score double
);
-- 09.查看stu学生表结构
-- 语法:desc 表名
desc stu;
----------------------------------
2.新增、更新、删除表记录
----------------------------------
-- 10.往学生表(stu)中插入记录(数据)
-- 语法:INSERT INTO 表名(列名1,列名2,列名3...) VALUES(值1,值2,值3...);
insert into stu(id,name,gender,birthday,score) values(1,'赵三','男','2000-12-11',20);
如果要插入所有就可以省略列名 但要求值必须要对应
insert into stu values(1,'赵三','男','2000-12-11',20);
-- 如果是在cmd中执行插入记录的语句,先 set names gbk; 再插入记录!
-- 查询学生表中的所有记录
select * from stu;
-- 11.查询stu表所有学生的信息
-- 语法:SELECT 列名 | * FROM 表名
select id,name,gender,birthday,score from stu;
select * from stu;
-- 12.修改stu表中所有学生的成绩,加10分特长分
-- 修改语法: UPDATE 表名 SET 列=值,列=值,列=值...[WHERE子句];\
update stu set score = score+10;
-- 13.修改stu表中编号为1的学生成绩,将成绩改为83分。
update stu set score = 83 where id=1;
提示:where子句用于对记录进行筛选过滤,保留符合条件的记录,将不符合条件的记录剔除。
-- 14.删除stu表中所有的记录
delete from stu;
-- 删除记录语法: DELETE FROM 表名 [where子句]
-- 仅删除符合条件的(删除id=2)
delete from stu where id=2;
----------------------------------
3.查询表记录
3.1.基础查询
-- 准备数据: 以下练习将使用db10库中的表及表记录,请先进入db10数据库!!
----------------------------------
-- 15.查询emp表中的所有员工,显示姓名,薪资,奖金
select name,sal,bonus from emp;
-- 16.查询emp表中的所有部门和职位
select dept,job from emp;
在select之后,列名之前加上一个distinct剔除重复记录