MYSQL前端笔记(一)
一、为什么要学习数据库
1、为了方便查询数据
2、为了持久化保存数据
二、数据库的相关概念
DBMS、DB、SQL
DB:数据库,保存数据的容器;
DBMS:数据库管理系统或者数据库管理产品;常见的数据库管理系统:MySQL 、ORACAL 、DB2、sql server
SQL:结构化查询语句
三、数据库存储数据的特点
1、表是放在库里面的;
2、数据是存放在表里面的;
3、一个数据库里面表名是唯一的
4、数据库里面列名称之为字段
5、表中数据是以行的形式存放
四、初始化MySQL
MySQL服务登录和退出
登录:
MySQL -u root -p
退出:
quit;或者 exit;
MySQL的常见命令和语法规范
语法规范:
1、关键字大写,表名、字段名小写;
2、MySQL支持关键字小写;
常见命令
查询有哪些数据库:
show databases;
指定操作数据库:
use 数据库名字;
查看数据库中有哪些表:
show tables;
查看表结构
desc表名;
查看表数据库:
select * from 表名
五、DDL语言(数据定义语言)
库和表的管理
常见数据库:
create database 库名;
删除数据库:
drop database 库名;
创建表:
注意:要创建表,需要先要use 数据库
创建表:
create table 表名(
字段名 数据库类型,
字段名 数据库类型,
字段名 数据库类型
);
删除表:
drop table 表名;
MySQL修改表
1、修改表名 rename
alter table 旧表名 rename 新表名;
2、 修改字段的数据类型 MODIFY
alter table 表名 MODIFY 字段名 字段类型;
3、修改字段名 change
alter table 表名 change 旧字段名 新字段名 新字段类型;
4、添加字段 add first after
将字段firstname 添加到age字段之后
alter table student add firstname varchar(5) after age;
将firstname添加到第一列
alter table student add firstname varchar(5) first
5、删除字段 drop
alter table 表名 drop 字段名;
常见数据类型的介绍
常见约束
1、主键PRIMARY KEY
作用:DBMS为了方查找数据库,设计的一个规则
特点:
一张表里面主键是唯一的;
主键可以用来唯一的标识一行数据,主键不能为空,
联合主键:表中字段不能作为唯一标识每一行数据时,选取表中两个或者多个字段作为联合主键
联合主键的特点:如果去掉联合主键某个字段,剩下的字段任然可以构成联合主键,那么说明之前的联合主键是错误的
在修改表时添加主键
alter table user add primary key(id);
删除主键:
alter table user drop primary key;
创建表的时候设置主键:
方式一:
create table class(
-> id int(11) primary key,
-> name varchar(12)
-> );
方式二:
create table class1(
-> id int(11),
-> name varchar(12),
-> primary key(id)
-> );
创建联合主键:
create table user1(
-> name char(16),
-> gender char(10),
-> birthday date,
-> city varchar(16),
-> primary key(name,city)
-> );
2、主键自增 AUTO_INCREMENT
3、外键FOREIGN KEY(deptId) REFERENCES tb_dept1(id)
4、唯一约束UNIQUE
5、默认值DEFAULT 'Beijing'
6、非空约束(NOT NULL)
六、DML语言(数据操纵语言)
插入语句
不指定字段插入:
insert into 表名 values (1,'lsii',56,'13512345678');
指定字段名插入:
insert into student (name,age,stuphone) values ('lsii',56,'13512345678');
同时插入多行数据:
insert into student values
(2,'wangwu',46,'13612345678'),
(3,'sadfsa',34,'13412345678');
修改语句
修改其中某个字段的值
update 表名 set id = 4 where age=56;
多个字段同时修改值的时候用逗号隔开
update student set id = 4,name='augus' where age=56;
删除语句
删除其中某一行数据
delete from 表名 where name='fengliu';
同时删除多行数据:
delete from 表名 where name in ('lisi','wangwu');