使用的MySQL数据库
一、库
增
新建1个shuju库
create database shuju;
删
删除shuju库
drop database shuju;
查
查询所有数据库
show databases;
二、表
增
auto_increment 是自增;primary key(id) 把id设置为主键;int、varchar 都是字符类型后跟括号规定字符长度;not null 非空;
create table users(
id int auto_increment,
name varchar(100) not null,
password varchar(10) not null,
primary key(id)
);
只有int类型且为primary key才可以使用auto_increment
创建完的表如下图:
删
删除users表
drop table users;
改
给users表增加一个mail列,并设置一个默认值。
alter table users add mail varchar(20) default "[email protected]";
删除掉刚刚新增的列
alter table users drop mail;
查
查询一个库里所有的表(先要进入这个数据库中)
show tables;
查询表的结构
describe users;
三、内容
增
给users表增加一条数据:
insert into users(
id,name,password
)
values(
1,"zhangsan","pass"
);
如果一个列有默认值,那么在执行插入行时可以省略该列,不填这个列的值。比如在users表中的id是自增的字段,添加李四的数据:
insert into users(
name,password
)
values(
"李四","123456"
);
新增完成的表如下图所示:
删
删除李四的数据
delete from users where id=2;
直接清空表中的记录,全删。
delete from users;
改
更改users表中id为1的那一条数据,改名字和密码字段的内容。
update users
set name="张三",password="456789"
where id=1;
查
*星号是通配符,表示查询所有列。
select id,name,password from users;
或者:
select * from users;
额外补充
1、使用命令行操作MySQL,首先开启服务,然后再登录MySQL数据库。
net start mysql # 开启服务
mysql -uroot -p # 使用root用户登录数据库
2、命令行想要对表进行操作首先要进入到对应数据库里面
use 库名;
3、主键的内容不允许被重用,举一个栗子:把李四那一条记录删掉,再加一条王五的数据,王五的id会自动赋值为3而不是2。因为id=2是李四的id,即使李四被删掉了,它的id值也不会给新来的数据用。
4、update和delete语句在使用时要跟上where子句,不然会直接更新/删除整个表。
5、使用"where"时最好用主键,因为主键是唯一且非空的,并且不允许改变和重用。