MySQL数据库基本操作整理

1.mysql基本操作

net start 服务名//启动mysql服务

net stop 服务名//停止mysql服务

mysql -h主机地址 -P端口 -u用户名 -p密码//登录mysql

\q ,Quit,Exit; //退出mysql

 

2.数据库操作

create database 数据库名字 [charset 库选项];//创建数据库

show databases [like 匹配模式];//显示数据库

show create database 数据库名字;//查看数据库创建语句

use 数据库名字;//选择数据库名字

alter database 数据库名字 charset=字符集;//修改数据库字符集

drop database 数据库名字;//删除数据库

 

3.表操作

; , \g, \G,//sql语句结束符

create table 表名(字段名 字段类型[字段属性],字段名 字段类型[字段属性],....) [charset=字符集];//创建表

create table 新表名 like 表名;//复制已有表结构

 

show tables [like 匹配模式];//显示表

desc 表名;//显示表结构

show columns from 表名;//显示表结构

describe 表名;//显示表结构

show create talbe 表名;//显示表创建语句

 

rename table 旧表名 to 新表名;//修改表名

alter table 表名 表选项=新值;//修改表选项

alter table 表名 add [column] 新增字段 列类型[列属性] [first/after 字段名];//新增字段

alter table 表名 change 旧字段名 新字段名 字段类型[列属性];//修改字段名

alter table 表名 modify 字段名 类型 [新属性];//修改字段属性

alter table 表名 drop 字段名;//删除字段

drop table [表名1,表名2...];//删除表

 

4.表数据操作

insert into 表名 [(字段列表)] values (对应字段值列表);//插入数据

insert into 表名 [(字段列表)] values(值列表),(值列表)...;//插入多条记录

insert into 表名[(字段列表)] values(值列表) on duplicate key update 字段=新值//主键冲突更新方式插入数据

replace into 表名 [(字段列表)] values(值列表);//主键冲突替换方式插入数据

//蠕虫复制:一分为二,成倍增加。从已有数据中获取数据,并且将获取到的数据插入到数据表中

insert into 表名[(字段列表)] select */字段列表 from 表;

 

select *from 表名;//查询表中全部数据

select 字段列表 from 表名;//查询表中部分字段数据

select 字段列表/* from 表名 where 字段名=值;//简单按条件查询数据

select 语句 Union[union选项] select语句;//联合查询,

select *from 表1 join[inner] 表2 on 匹配条件;//内连接查询

select *from 主表 left join 从表 on 连接条件;//左连接查询

select *from 从表 right join 主表 on 连接条件;//右连接查询

select *from 表1[inner,left,right] join 表2 using 连接条件;//自然连接查询

select *from 数据源 where 条件判断 =/<>(select 字段名 from 数据源 where 条件判断);//标量子查询,一行一列

select *from 表1 where 条件判断 in(select 查询语句);//列子查询,一列多行

select *from 表1 where 条件判断(构造一个行元素)=(select 查询语句);//行子查询,一行多列

select 字段列表 from (表子查询)[where][group by][having][limit];//表子查询,多行多列

select *from 表名 where exists(select 查询语句);//exists子查询

//完整的select查询语句

select select选项 字段列表 from 数据源 where 条件 group by 分组 having 条件 order by 排序 limit 限制;

(注:select 选项: all, distinct 。

select 数据源:frome 表1,表2...,或者是从表中查询出来的二维结果:from (select 字段列表 from表)as 别名

group by 字段1[desc/asc],字段2[desc/asc];//按字段分组并排序:

group by 字段 [asc/desc] with rollup;//回溯统计

order by 字段 [asc/desc],字段2 [asc/desc];//按字段排序

limit 数量//限制数量 limit offset ,lenth;//分页)

 

delete from 表名 [where 条件];//删除数据

//更新数据,如果没有条件,是全表更新数据,可以使用limit来限制更新数量

update 表名 set 字段名=新值 [where 判断条件] [limit 数量];

 

show variables like 'character_set%';//查看系统保存的关系字符集

set names 字符集名;//修改系统保存的关系字符集

set 变量名=值;//一个个修改系统保存的关系字符集

 

5.列属性

null//空

default//默认值

comment//列描述

auto_increment //自增长

primary key //主键

unique key//唯一键

 

//在创建表时在需要当做主键的字段之后增加primary key 属性来确定主键

create table 表名(字段名 字段类型[列属性] primary key) [charset=字符集];

//在创建表时在所有字段之后增加primary key选项确定主键

create table 表名(字段名 字段类型[列属性,字段名2 字段类型[列属性] ,primary key(字段名)) [charset=字符集];

alter table 表名 add primary key(字段名);//在创建表后增加主键

desc 表名;show create table 表名; //查看主键信息

alter table 表名 drop primary key;//删除主键

 

//在创建表时直接在表字段之后增加唯一键标识符unique[key] 来确定唯一键

create table 表名(字段名 字段类型[列属性] unique key) [charset=字符集];

//在创建表时在所有字段之后使用 unique key(字段名);

create table 表名(字段名 字段类型[列属性,字段名2 字段类型[列属性] unique key(字段名)) [charset=字符集];

alter table 表名 add unique key(字段名);//在创建完表之后增加唯一键

desc 表名;show create table 表名; //查看唯一键信息

alter table 表名 drop index 唯一键名字;//删除唯一键

 

6.数据库备份与还原

mysqldump/mysqldump.exe -hPup 数据库名字 [表1 [表2...]] > 备份文件地址//SQL备份

mysql.exe -hPup 数据库 <文件位置 //数据还原

 

7.用户权限管理

create user 用户名 indentified by '明文密码'; //创建用户,用户格式:用户名@主机地址

drop user 用户名@host;//删除用户

set password for 用户=password('新明文密码');//修改用户密码

update mysql.user set password=password('新明文密码') where user='' and host='';//修改用户密码

grant 权限1,权限2../all privileages on 数据库.表名/数据库.*/*.* to用户;

revoke 权限1,权限2.../all privileages on 数据库.表名/数据库.*/*.* from 用户;

flush privileges;//刷新权限

 

8.外键

create table 从表(字段1 类型[属性],字段2 类型[属性]....,[constraint '外键名'] foreign key(外键字段) references 主表(主键)) charset 字符集;//在创建表时增加外键

alter table 从表 add [constraint '外键名'] foreign key(外键字段) references 主表(主键);//在创建表后增加外键

alter table 从表 drop foreign key 外键名字;//删除外键

alter table 表名 drop index 索引名字;//删除对应的索引

 

9.视图

create view 视图名字 as select 指令;//创建视图

select 字段列表 from 视图名字 [子句];//使用视图

alter view 视图名字 as 新select指令;//修改视图

drop view 视图名字;//删除视图

 

10.事务

start transaction;//开启事务

commit rollback;提交事务

savepoint 回滚点名字;//增加回滚点

rollback to 回滚点名字;//回到回滚点

 

11.变量

show variables [like 'pattern'];//查看系统变量

set 变量名=新值;//局部修改系统变量

set global 变量名=值; set@@global.变量名=新值//全局修改,只针对新客户端有效

 

set @变量名=值; set@变量名:=值;//用户变量,只对当前用户使用的客户端生效

select @变量1:=字段1,@变量2:=字段2 from 数据表 where 条件;//给用户变量赋值且查看赋值过程

select 字段1,字段2...from 数据源 where 条件 into 变量1,变量2...;//给用户变量赋值不看过程

select @变量名;//查看自定义变量

 

declare 变量名 数据类型[属性];//局部变量,使用declare关键字声明,declare语句的位置在begin和end语句块之间

 

12.流程结构

if(条件,为真结果,为假结果)//if分支,用在select查询当中

if 条件表达式 then 满足条件要执行的语句; else 不满足条件要执行的语句; end if; //用在复杂的语句块中

 

while 条件 do 要循环执行的代码, end while;//while循环

标识名字:while 条件 do 循环体 end while[标识名字];//结构标识符,为某些特定结构进行命名

 

13.函数

(delimiter 新符号//修改临时语句结束符

create function 函数名(形参) returns 返回值类型

begin

//函数体

return 返回值数据;//数据必须与结构中定义的返回值类型一致

end

语句结束符

delimiter ;//修改回语句结束符)----------//自字义函数

 

show function status [like pattern];//查看函数状态

show create function 函数名字;//查看函数创建语句

drop function 函数名;//删除函数

 

14.存储过程

(delimiter 新符号//修改临时语句结束符

create procedure 过程名字([参数列表])

begin

过程体

end

语句结束符

delimiter ;//修改回语句结束符)----------//自字义过程

 

show procedure status [like pattern];//查看过程

show create procedure 过程名字;//查看过程

call 过程名([实参列表]);//调用过程

drop procedure 过程名;//删除过程

 

15.触发器

(delimiter 新符号//修改临时语句结束符

create trigger 触发器名字 触发时机 触发事件 on 表 for each row

begin

触发体

end

语句结束符

delimiter ;//修改回语句结束符)----------//创建触发器

 

show triggers\G//查看触发器

show create trigger 触发器名字;//查看触发器

drop trigger 触发器名字;//删除触发器

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园的建设目标是通过数据整合、全面共享,实现校园内教学、科研、管理、服务流程的数字化、信息化、智能化和多媒体化,以提高资源利用率和管理效率,确保校园安全。 智慧校园的建设思路包括构建统一支撑平台、建立完善管理体系、大数据辅助决策和建设校园智慧环境。通过云架构的数据中心与智慧的学习、办公环境,实现日常教学活动、资源建设情况、学业水平情况的全面统计和分析,为决策提供辅助。此外,智慧校园还涵盖了多媒体教学、智慧录播、电子图书馆、VR教室等多种教学模式,以及校园网络、智慧班牌、校园广播等教务管理功能,旨在提升教学品质和管理水平。 智慧校园的详细方案设计进一步细化了教学、教务、安防和运维等多个方面的应用。例如,在智慧教学领域,通过多媒体教学、智慧录播、电子图书馆等技术,实现教学资源的共享和教学模式的创新。在智慧教务方面,校园网络、考场监控、智慧班牌等系统为校园管理提供了便捷和高效。智慧安防系统包括视频监控、一键报警、阳光厨房等,确保校园安全。智慧运维则通过综合管理平台、设备管理、能效管理和资产管理,实现校园设施的智能化管理。 智慧校园的优势和价值体现在个性化互动的智慧教学、协同高效的校园管理、无处不在的校园学习、全面感知的校园环境和轻松便捷的校园生活等方面。通过智慧校园的建设,可以促进教育资源的均衡化,提高教育质量和管理效率,同时保障校园安全和提升师生的学习体验。 总之,智慧校园解决方案通过整合现代信息技术,如云计算、大数据、物联网和人工智能,为教育行业带来了革命性的变革。它不仅提高了教育的质量和效率,还为师生创造了一个更加安全、便捷和富有智慧的学习与生活环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值