对Mysql数据库的基本操作的一些总结

Mysql数据库的基本操作

总注:所有sql语句结尾处最好加上分号符;

MySQL中的一些语句使用方法:

#查看所有的数据库

show databases;

 

#查看数据库下所有的表

show tables;

 

注:sql语句不区分大小写,但是严重区分中英文符号,不允许使用中文符号。

#创建数据库

create database test2;

#使用数据库

use test2;

注:使用数据库时,不能忘记这句。

#创建表 需要创建主键 主键是唯一的,不能为空。Primarykey为主键唯一标识

#  auto_increment:设置自增 unique:唯一约束 notnull:不为空约束

create table login(

  idint(8) primary key auto_increment,

 username varchar(20) unique,

 password varchar(20) not null,

 role int(8) not null

);

#查看表设计

desc login;

注:表创建之后,可以通过查看表设计,来检查创建的表是否满足要求。

 

增加数据:

 

 

#不按照字段添加,那么就需要按照表设计的字段顺序添加

Insert into login values(1,’joker12345’,’123456’,1);

 

#按照字段添加 必须为主键设置自增,否则必须给主键赋值

insert into login(username,password,role)values(‘wangzhe123’,’23333’,2);

insert into login(username,password)valus(‘wangfei’,’21233’);

 

#添家多条数据

Insert into login(username,password,role)values(‘张飞122’,’123’,1),(‘关羽11’,’123456’,1),(’刘备123’,’128146’,2);

 

#删除表

drop table login;

 

#删除数据库

drop database test2;

 

#删除drop 与delete的区别

#drop是删除表 表不存在 delete是删除表中的数据,表仍然存在

delete from student where id =1

 

#删除表中所有数据

delete from student

 

改:

#修改数据

注:set 后面的使用逗号分隔而不是用and 只有where 条件语句后使用and 代表并且

update student set username=’龙傲天’,password=’123456789’ where id=1

 

查:

# * 代表是所有的字段,查看当前表中所有的数据

select * from login;

 

#只查询姓名和年龄 select后为查询的字段 from表

select password from login;

 

#查询姓名不是张飞的用户信息

select * from login where username!='张飞';

select * from login where username<>'张飞';

 

# like模糊查询

# 查询名字中带有‘张’的用户信息

select * from login where username like '%张%';

 

#查询权限在2-5之间的用户

select * from login where role between 2and 5;

 

#查询id包含2,3,5的用户信息

select * from login where id in(2,3,5);

 

#分页 第一个参数为索引,通过索引得到页数,第二个参数为每次显示的条数

select * from login limit 2,2;

 

#将学生的年龄从小到大排序 order by为排序本身就有从小到大的功能asc: 小-大 desc:大-小

 

select * from login order by role asc;

 

#聚合函数count(统计总数) sum(求和) avg(平均值) max(最大值) min(最小值)

select count(*) from student;

 

 

表设计修改:

#添加字段 phoneNumber

alter table login add phoneNumbervarchar(30) not null;

 

#将username 修改为uname

alter table login change username unamevarchar(20) unique;

 

#将phoneNumber 放到password后面

alter table login modify phoneNumbervarchar(30) after password;

 

#删除表字段

alter table login drop phoneNumber;

 

#更改表名

alter table login rename m_login;

 

 

外键的情况:

#一张表的外键是另外一张表的主键 外键可以创建多个 但是主键只能创建一个

#外键的值可以重复。

 

#设置外键 必须先给主键的创建了数据才能给外键表进行添加数据 on delete cascade:级联删除

 

#设置了级联删除,既可以删除主表数据由可以删除外键表数据,一旦删除主表数据,外键的关键的数据一并删除

alter table student add constraint foreignkey(sno) references login(sno) on delete cascade;

 

表的复制和视图的创建:

#表的复制 将student的数据复制到新创建的表student2中

create table student2 as select * fromstudent;

 

#创建视图  视图是虚拟的表其数据来源是真实的表

create view lon_view as select id,username,password from u_login;



参考:https://blog.csdn.net/ztyxy1115/article/details/78975449




你可能感兴趣的:(#,Mysql)