工作中常用到的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最简单的一个 ...
随机推荐
- vray学习笔记(3)-多维子材质是个什么东西
多维子材质是个什么东西?为什么出现这个概念? 在3dsmax官方网站,我们可以看到它的定义: The Multi/Sub-Object material lets you assign differe ...
- [转载]/etc/security/limits.conf解释及应用
limits.conf的格式如下: username|@groupname type resource limit username|@groupname:设置需要被限制的用户名,组名前面加@和用户名 ...
- Visual Studio2012快捷键总结
(1)如何设置更改快捷键 1.进入工具----选项 对话框 2.选择 环境---->键盘 3.在 [显示命令包含] 下面的对话框中输入“对齐”关键字,然后就会在这个编辑框下面一个文本窗口中显 ...
- [译]在Javascript中进行日期相关的操作
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- C# 使用SendMessage 函数
在C#中,程序采用了的驱动采用了事件驱动而不是原来的消息驱动,虽然.net框架提供的事件已经十分丰富,但是在以前的系统中定义了丰富的消息对系统的编程提供了方便的实现方法,因此在C#中使用消息有时候还是 ...
- Others - 使用 GitHub Pages 搭建个人博客
写在前面 GitHub 是技术知识分享的地方,如果使用它写其他奇奇怪怪的东西就算了. 正文 新建一个名为 username.github.io 的 repository.其中 username 为你的 ...
- 利用filter,巧妙地去除Array的重复元素
var r, arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry']; r ...
- (原创)Codeforces Round #550 (Div. 3) A Diverse Strings
A. Diverse Strings time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- loj #2055. 「TJOI / HEOI2016」排序
#2055. 「TJOI / HEOI2016」排序 题目描述 在 2016 年,佳媛姐姐喜欢上了数字序列.因而他经常研究关于序列的一些奇奇怪怪的问题,现在他在研究一个难题,需要你来帮助他. 这个 ...
- 树状数组 P3605 [USACO17JAN]Promotion Counting晋升者计数
P3605 [USACO17JAN]Promotion Counting晋升者计数 题目描述 奶牛们又一次试图创建一家创业公司,还是没有从过去的经验中吸取教训--牛是可怕的管理者! 为了方便,把奶牛从 ...