工作中常用到的sql命令!!!
一、mysql数据库日常操作。
1.启动mysql:/etc/init.d/mysql start (前面为mysql的安装路径)
2.重启mysql: /etc/init.d/mysql restart (前面为mysql的安装路径)
3.关闭mysql: /etc/init.d/mysql stop(前面为mysql的安装路径)
4.连接本机上的mysql:
mysql -u 用户名 –p (按回车,再输入密码)
例:mysql –u root –p
5.退出mysql:exit
6.修改mysql密码:
(1)mysqladmin -u用户名 -p旧密码 password 新密码
例:mysqladmin –u root –p 123456 password 654321
(2)进入mysql命令行SET PASSWORD FOR 用户名@主机=PASSWORD("root");
例:set password for root@localhost=password(“123456”);
(3)修改自己的密码:
set password=password(“123456”);
7.增加新用户:
grant 操作 on 数据库.* to 用户名@登录主机 identified by "密码"
例:grant select on yingyu to qiu@localhost indentify by “123456”;
8.建库:
create database 库名;
例:create database yingyu;
9.显示数据库列表: show databases;
10.打开数据库:
use 数据库;
例:use yingyu;
11.删库:
drop database 库名;
例:drop database yingyu;
12.显示库中的数据表:
show tables;
13.显示数据表的结构:
describe 表名;
例:describe student;
14.编码的修改:
(1)改变整个mysql的编码格式:
启动mysql的时候,mysqld_safe命令行加入
--default-character-set=编码格式
例:--default-character-set=UTF-8
(2)改变某个库的编码格式:
在mysql提示符后输入命令:
alter database 数据库 default character set 编码格式;
例:alter database student default character set UTF-8;
二、sql常用命令
1.建表:
create table 表名(字段设定列表);
例:create table student
(stuid char(10) primary key,
name char(20),
grade int(3),
age int(3)
);
2.删表:
drop table 表名;
例:drop table student;
3.将表中记录清空:
delete from 表名;
例:delete from student;
4.显示表中的记录:
select * from 表名;
例:select * from student;
5.给表改名:
rename table 旧表名 to 新表名;
例:rename table student to people;
6.修改字段属性:
(1)alter table 表名 change 字段名称 字段名称 字段类型 [是否允许非空];
例:alter table student change name newname char(20) null;
(2)alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
例:alter table student modify name char(20) null;
7.修改表设置默认字段:
(1)alter table 表名 modify 字段名称 字段类型 default 默认值;
例:alter table student modify name char(10) defalt 7;
(2)alter table 表名 alter 字段名称 set default value;
例:alter table student alter name set default 7;
8.增加表的一个字段:
alter table 表名 add column 字段名称 字段类型 (default 默认值);
例:alter table student add column sex char(10) (default 1);
9.删除表的一个字段
alter table 表名 drop column 字段名称;
例:alter table student drop column name;
10.删除表主键
alter table 表名 drop primary key;
例:alter table student drop primary key;
11.添加新主键:
alter table 表名 add primary key(字段);
例:alter table student add primary key(stuid);
12.往表里插入一行数据:
insert into 表名 values(字段数据1,字段数据2,•••)
例:insert into student values(‘123’,‘qqqq’,‘80’);
13.往表里插入多行数据:
insert into 表名 values(字段数据1,字段数据2,•••) ,(字段数据1,字段数据2,•••),•••;
例:insert into student values(‘123’,‘qqqq’,‘80’),(‘124’,‘yyyy’,‘90’);
14. 修改表的数据:
update 表名 set 字段名=value where 范围
例:update student set name=‘qqq1111’ where stuid=‘123’;
15.模糊查询
select * from 表名 where 字段 like ’%value1%’;
例:select * from student where name like ‘q%’;
16.排序查询:
select * from 表名 order by 字段名1,字段名2 [desc]
例:selec * from student order by grade;(升序)
select * from student order by grade desc;(降序)
17.左连接查询:
select 表1.字段1,表1.字段2,表2.字段1,表2.字段2 from 表1 left (outer) join 表2 on 表1.字段=表2.字段;
例:select student.num,student.name,people.name,people.age from student left (outer) join people on student.name=people.name;
18.右连接查询:
select 表1.字段1,表1.字段2,表2.字段1,表2.字段2 from 表1 right (outer) join 表2 on 表1.字段=表2.字段;
例:select student.num,student.name,people.name,people.age from student right (outer) join people on student.name=people.name;
19.全连接查询(mySql不支持全连接,所以用左连接union右连接)
select 表1.*,表2.* from 表1 left (outer) join 表2 on 表1.字段=表2.字段 union select表1.*,表2.* from 表1 right (outer) join 表2 on 表1.字段=表2.字段;
例:select s.*,p.* from student s left join people p on s.name = p.name union select s.*,p.* from student s right join people p on s.name = p.name;
20.关于年份的查询
例:查询在1990-1993年之间出生的学生的全部信息
select * from student where year(Sbirthday)between 1990 and 1993;
查询在1990年12月5日之前出生的学生的全部信息
select * from student where birthday < date(‘1990-12-05’);
三、备份与还原
1.备份数据库:
mysqldump –u 用户名 –p 数据库名 > 保存路径+文件名;
例:mysqldump –u root –p yingyu > /home/yingyu/yingyu.sql;
2.还原数据库:
mysql –u 用户名 –p 数据库名 < 文件路径+文件名;
例:mysql –u root –p yingyu < /home/yingyu/yingyu.sql;
3.直接将MySQL数据库压缩备份
mysqldump –u 用户名 –p 数据库名 | gzip > 保存路径+文件名
例:mysqldump –u root –p yingyu | gzip > /home/yingyu/yingyu.sql.gz;
4.还原压缩的Mysql数据库
gunzip < 文件路径+文件名 | mysql –u 用户名 –p 数据库名
例:gunzip < /home/yingyu/yingyu.sql.gz | mysql –u root –p yingyu;
5.备份数据库中的某些表:
mysqldump –u 用户名 –p 数据库名 表名1 表名2 > 保存路径+文件名
例:mysqldump –u root –p yingyu student > /home/yingyu/yingyu.sql;
6.备份数据库中的某些数据库:
mysqldump –u 用户名 –p –B 库1 库2 > 保存路径+文件名
例:mysqldump –u root –p –B yingyu1 yingyu2>/home/yingyu/yingyu.sql;
7.还原数据库中的某些数据库:
mysqldump –u 用户名 –p –D 库1 库2 < 文件路径 + 文件名;
例:mysqldump–u root –p–D qiuyingyu yingyu</home/yingyu/yingyu.sql;
8.还原数据库中的某些表:
mysql –u 用户名 –p 数据库名 < 保存路径+表文件名
例:mysql –u root –p yingyu < /home/yingyu/yingyu.sql;
工作中常用到的sql命令!!!的更多相关文章
- 收集一些工作中常用的经典SQL语句
作为一枚程序员来说和数据库打交道是不可避免的,现收集一下工作中常用的SQL语句,希望能给大家带来一些帮助,当然不全面,欢迎补充! 1.执行插入语句,获取自动生成的递增的ID值 INSERT INTO ...
- 工作中常用到的Vim命令
最近工作中需要到linux服务器上更改文件,苦于对vim的各种命令不熟悉,今天特此总结并熟悉一下各种vim命令,好提高工作效率.后期持续更新 vim编辑器个人设置 先复制一份vim配置模板到个人目录下 ...
- php工作中常用到的linux命令
压缩并指定目录举例:zip -r /home/kms/kms.zip /home/kms/server/kms 解压并指定目录举例:unzip /home/kms/kms.zip -d /home/k ...
- 在工作中常用到的SQL
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 最近在公司做了几张报表,还记得刚开始要做报表的时候都 ...
- 总结工作中常用到的linux命令大全_经典
常用解压命令 tar.bz2 命令: tar -jxvf *.tar.bz2 tar.z 命令: tar -zxvf *.tar.z tar.gz 命令: tar -Zxvf *.tar ...
- 工作中常用到的Linux命令
ps: (ps的参数分成basic, list, output, thread, miscellaneous) (basic) -e / -A 显示所有进程 (output) -o 输出指定字段 ls ...
- 二零一七年工作中常用的基本Linux命令记录(Ubuntu)
Linux命令如下(Ubuntu): 1. apt-get install openssh-server 下载远程工具 2. apt-get install lrzsz 上传下载工具 3. apt-g ...
- 工作中常用到的linux命令总结
linux系统ubantu debian系统下载文件:wget https://github.com/buger/goreplay/releases/download/v1.0.0/gor_1.0.0 ...
- 工作中常用Lixu命令学习笔记
对于Linux,我是菜鸟,也是在工作中了才开始慢慢接触,用Linux的人都我都会觉得屌屌的,现在把工作中常用的一些Linux命令记录一下,供以后学习和参考. cd 这可能是我觉得Linux最简单的一个 ...
随机推荐
- Libcurl 简明使用指南
http://blog.csdn.net/weiling_shen/article/details/7620397 我们的程序中使用的是人家的Easy.h头文件.....完成文件的上传和下传. 尤其是 ...
- WordCount-软件测试初体验
github:https://github.com/skz12345/WordCount PSP2.1 PSP阶段 预估耗时(分钟) 实际耗时(分钟) Planning 计划 40 60 · Esti ...
- C++面试笔记--单链表
1.编程实现单链表删除节点. 解析:如果删除的是头节点,如下图: 则把head指针指向头节点的下一个节点.同时free p1,如下图所示: 如果删除的是中间节点,如下图所示: 则用p2的n ...
- 后台调js方法
Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>btnSearch( ...
- 数据库 first
数据库原理 .SQL(DDL.DML) 字符串操作 .数值操作 .日期操作 .空值操作 SQL(基础查询) .SQL(关联查询) SQL(高级查询) 子查询 视图.序列.索引 .约束
- loj #2024. 「JLOI / SHOI2016」侦查守卫
#2024. 「JLOI / SHOI2016」侦查守卫 题目描述 小 R 和 B 神正在玩一款游戏.这款游戏的地图由 nnn 个点和 n−1n - 1n−1 条无向边组成,每条无向边连接两个点, ...
- [CQOI2012][bzoj2668] 交换棋子 [费用流]
题面 传送门 思路 抖机灵 一开始看到这题我以为是棋盘模型-_-|| 然而现实是骨感的 后来我尝试使用插头dp来交换,然后又惨死 最后我不得不把目光转向那个总能化腐朽为神奇的算法:网络流 思维 我们要 ...
- ORACLE 中dbms_stats的使用
dbms_stats能良好地估计统计数据(尤其是针对较大的分区表),并能获得更好的统计结果,最终制定出速度更快的SQL执行计划. exec dbms_stats.gather_schema_stats ...
- Spring IOC机制使用SpEL
一.SpEL 1.1 简介 Spring Expression Language,Spring表达式语言,简称SpEL.支持运行时查询并可以操作对象图. 和JSP页面上的EL表达式.Str ...
- python 矩阵(mat)操作
1.矩阵的创建 由一维或二维数据创建矩阵 a1=array([1,2,3]); a1=mat(a1); data1=mat(zeros((3,3))); #创建一个3*3的零矩阵,矩阵这里zeros函 ...