工作中常用到的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最简单的一个 ...
随机推荐
- kaggle Titanic
# coding: utf-8 # In[19]: # 0.78468 # In[20]: import numpy as np import pandas as pd import warnings ...
- 字符串创建XML文档
创建XML文档,方法与形式是多样的,下面Insus.NET再例举两种,可供参考. XmlDocument(namespace:System.Xml)在实例化之后,它有一个方法LoadXml(),可以把 ...
- 温故而知新_C语言_递归
递归. 是的,差不多就是这种感觉.上面就是类似递归的显示表现. 2017 10 24更新: 递归这个问题放了很久.也没有写.大概是自己还没有好好理解吧. 在这里写下自己理解的全部. 一 何为递归. 字 ...
- Django之博客系统邮件分享博客
在上一章中,我们创建了一个基础的博客应用,我们能在http://127.0.0.1:8000/blog/显示我们的博客.在这一章我们将尝试给博客系统添加一些高级的特性,比如通过email来分享帖子,添 ...
- baidumap应用
需要在安卓平台利用baidumap SDK进行二次开发, 注册好,创建应用 利用jdk/bin里的keytool做Android SDK安全码 进入.android(参照下图):输入keytool - ...
- Websocket,ProtoBuffer,Hightlight,JSON 等,最近遇到的一些知识点小结
websocket websocket 支持但不仅限于web场景,是一种封装好的socket通信协议,可以用来做C-S通信. 可以通过设置 binaryType 来指定通信的数据流格式,从而达到简洁高 ...
- 【bzoj2818】: Gcd 数论-欧拉函数
[bzoj2818]: Gcd 考虑素数p<=n gcd(xp,yp)=p 当 gcd(x,y)=1 xp,yp<=n满足条件 p对答案的贡献: 预处理前缀和就好了 /* http://w ...
- Linux之sersync数据实时同步
sersync其实是利用inotify和rsync两种软件技术来实现数据实时同步功能的,inotify是用于监听sersync所在服务器上的文件变化,结合rsync软件来进行数据同步,将数据实时同步给 ...
- 2017第八届蓝桥杯决赛(C++ B组)4.发现环
描述 小明的实验室有N台电脑,编号1~N.原本这N台电脑之间有N-1条数据链接相连,恰好构成一个树形网络.在树形网络上,任意两台电脑之间有唯一的路径相连. 不过在最近一次维护网络时,管理员误操作使得某 ...
- arcgis10.0直连sde