您的位置:首页 > 数据库 > MySQL

MySQL基本操作

2019-03-27 17:15 411 查看
版权声明:指剑 https://blog.csdn.net/fly1574/article/details/88850207

创建数据库:

create database 数据库名;

删除数据库:

drop database 数据库名;

查看数据库:

show databases;

选择要操作的数据库数据库:

use 数据库名;

查看当前数据库的表:

show tables;

创建数据库的表

create table 表名(字段名称 字段类型,字段名称 字段类型 ........);#每个字段之间用英文逗号隔开;

例如:
创建一个书的表:

create table book(num int,name varchar(10),date date,price double(5,2));

##这里的num 是int类型,name是字符串类型,date是日期类型,price价格是双精度类型,这里的double(5,2)是整个价格长度为5,小数点后有2位

删除表:

drop table 表名;

查看数据库的表的结构:

desc 表名;

查看表中所有数据:

select * from 表名;

查看表中指定数据:

select 字段名 from 表名;

修改表:

alter table 表名  字段名 字段类型

例如
添加字段

alter table 表名 add 字段名 字段类型:
alter table book add user varchar;

##这里是添加一个书籍使用者字段

修改字段:

alter table 表明 modify 字段名 字段类型;

例如:

alter table book modify price int;

##这里是将价格改为整数类型

删除字段:

alter table 表名 drop 字段名;

向表中插入数据:

insert into 表名(想插入的字段名称....) values(想插入的字段的值);

##每个字段名称,字段值用英文逗号隔开;
语法二:

insert into 表名 values(表中所有字段的值)

例如:

insert into book(num) values(1);

insert into book(num,name) values(2,'sun');

##字符串类型需要用单引号括起来;

insert into book(num,name,date) values(3,'build','2010-10-10');

##日期也需要用引号括起来;

insert into book(num,name,date,price) values(4,'build','2010-10-10',12);

所有要插入所有数据,可以省略掉字段名,但是values要对应,也就是列的数量和values的数量要对等;也就是一一对应
例如
这里有

4个字段

num name date price

那么要一次性插入数据可以这样操作:

insert into book values(4,'compute','2012-9-10',12);

需要一一对应;

删除 数据库表中数据:

delete from 表名;##清空整张表

删除表中指定数据;

delete from 表名 where 条件表达式;

例如:

delete from book where num = 1;

修改表中记录:

update 表名 set 字段名=新的字段值,...... where 条件表达式

##中间用英文逗号隔开;
例如:

update book set name = 'test';##这里是将这个字段的所有数据都修改为  test

修改表中

指定 某一
条记录:
例如:

update book set name = 'sum' where num = 3;

##这里是将num为3的书名改为sum

当你想修改一条记录中的多个字段时,你可以应逗号分隔,同时进行操作:
例如:

update book set name ='test3' price=30 where num = 4;

MySQL约束:
所有的约束必须在创建表的时候加上去;

唯一约束(不允许完全相同的存在):
unique
例如:

create table book(num int unique,name varchar);

非空约束(不允许null存在):
not null

例如:

create table book(num int not null,name varchar);

同一字段加多个约束:
不需要逗号隔开
例如:

create table book(num int unique not null,name varchar);

非空约束和唯一约束称之为 主键约束
主键约束

primary key

例如:

create table book(num int primary key,name varchar);

一般数字类型的主键配合mysql自动增长策略

auto_increment

例如:

create table book(num int primary key auto_increment,name varchar);

##当你插入name值时,不对num进行操作,他会自动增长例如

insert into book(name) values('tom');

此时num的值会自动为1,对应的name为tom

外界约束

在一张表中的数据参考另外一张表的数据,
例如:在test数据库中存在2张表 一张为学生表,一张为班级表
学生表:num name class
班级表:class

而学生表中的class需要参考班级表的class;例如班级表中只存在1班,而学生表中出现了2班,这就出现了数据错误;

##注:MySQL中外键必须是另外一张表的主键!!!
为了保证数据的正确性,需要单独加约束

foreign key()  && references key()

范例:
班级表:class 学生表 student

创建班级表

create table class(num int primary key auto_increment,name varchar);

##此处就将class表中的num设置为主键并且自动增长

创建学生表:

create table student(num int primary key auto_increment ,name varchar(11),classnum int , foreign key(classnum) ,references class(num));

##foreign key() 括号中跟的是当前创建表中需要设置外界约束的字段,
references key() 中的跟的是需要参考的表中的字段

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: