sql语句的学习
注释:单行注释:-- 、# 多行注释:/*内容*/
1、DDL (data...) 数据定义语言
创建数据库
格式:create database 数据库名称;
创建数据库时,判断该库是否存在
create database if not exists 数据库名称;
创建数据库时,指定数据库的编码集
create database day01 character set "utf8";
删除数据库 格式: drop database 数据库名称;
drop database day01;
切换数据库 : use 数据库名称;
use day01;
展示MySQL当前管理的所有数据库
show databases;
修改数据库的编码格式:
alter database 数据库名称 character set “新的编码集”;
alter database day01 character set "utf8";
查看创建当前数据库的语句:
show create database 数据库名称;
show create database day01;
=============================================================
对数据库中表的操作
MySQL下常用数据类型:
int整数 double、float浮点数 datetime日期 char、varchar字符串
创建表:
创建表时,除了需要指定表名之外,还需要给表中的字段信息,具体有那些字段 每一个字段名称、数据类型、约束。
创建表时 添加if not exists 如果已经存在 不会执行创建语句。
create table if not exists 表名 (
字段名 数据类型 约束,
字段名 数据类型 约束,
...
字段名 数据类型 约束
);
创建表时指定编码格式
create table student(
sname varchar(20),
sage int
) default character set "utf8";
查看表结构:desc student;
查看创建表的语句:
show create table student;
修改表的名称:
alter table 旧表名 rename 新表名;
alter table student rename stu;
往表中添加一个字段 并且在最后面
alter table 表名 add 字段名称 数据类型 约束;
alter table avstar add cup varchar(2);
往表中添加一个字段 并且在最前面
alter table 表名 add 字段名称 数据类型 约束 first;
alter table avstar add id int first;
在表中某一个指定位置添加字段
alter table 表名 add 字段名称 数据类型 约束 after 已存在的某个字段名
alter table avstar add weight double after age;
删除表中的字段:
alter table 表名 drop 字段名;
alter table avstar drop weight;
该变表中字段的名称(只改变字段的类型和约束):
alter table 表名 modify 字段名称 新类型 新约束;
alter table avstar modify cup varchar(3);
改变表中现有字段(名称 类型 约束一并修改):
alter table 字段名 change 旧字段 新字段 新类型 新约束;
alter table avstar change `name` aname varchar(30);
删除表:
drop table 表名;
drop table stu;
=============================================================
2、DML(data manipulation language) 数据操作语言:增、删、改
DML操作之添加操作:格式
添加多条数据:value
添加单挑数据:values
insert into 表名 (字段名,字段名,...) values/value(值1,值2,...);
向表中添加数据:
insert into avstar (aname,age,weight,hobby) values ("小苍",40,110,"ML","C");
一次添加多条数据:
insert into avstar value ("小吉",23,100,"ml","c"),
("小吉",23,100,"ml","c"),
("小吉",23,100,"ml","c");
DML操作之修改数据:
语法格式:update 表名 set 字段名 = 值,字段名 = 值,...
[where 条件]
修改时没有条件 就是全部修改
update avstar set cup = "D";
条件修改
update avstar set cup = "E" where weight > 100;
一次性修改多个字段的值:
update avstar set age = 26,weight = 100 where aname = "悠亚";
DML操作之删除数据:
语法格式 delete from 表名 [where 条件]
delete from avstar where age < 20;
delete 和 tuncate 区别:
delete 只删除数据 不删除索引值
tuncate 删除表之后又创建一个新的表