MYSQL基础增强

库操作

      创建一个使用UTF-8字符集的数据库:
create database mydb character set UTF8; 创建一个带校对集的数据库
create database mydb character set UTF8 collate utf8_general_ci; 查看所有数据库:
show databases;
show databases like 'pattern'; 显示数据库的创建信息
show create database mydb ; 删除数据库:
drop database mydb ; 修改库(库名不能修改,可以修改库的细节.)
alter database mydb character set gb2312; 备份库(windows命令)
退出mysql客户端,quit,执行:
mysqldump -uroot -p mydb >c:\test.sql 恢复库(只能恢复库的数据,不能恢复库,首先要创建库)
Mysql命令行恢复:
use mydb;
source d:\book.sql;
windows命令恢复:
mysql -uroot -p mydb<c:test.sql

表细节操作

     修改表的细节信息:增加列
alter table books add classify varchar(40); 查看表的创建细节:
show create table employee;
6 查看表的结构:
desc books; 修改bookname列的长度:修改列的细节
alter table books modify bookname varchar(60); 12 修改列的细节
alter table users change column id id int; 删除author列:
alter table books drop author; 修改表名:
rename table books to book; 修改表的字符集:
alter table users character set gb2312; 修改列名:将user表的password列修改为userpass列
25 alter table user change column password userpass varchar(20);
删除表:
drop table users;

表操作

 规范建表:
主键约束:primary key
主键自动增长:auto_increment
唯一约束:unique
非空约束:not null
外键约束:
constraint ordersid_FK foreign key(ordersid) references orders(id)
constraint :定义一个约束
ordersid_FK :约束名称
foreign 外键约束
key(ordersid):约束谁
references orders(id) 参考谁
例1
create table test4(
id int primary key auto_increment,
name varchar(20) unique not null
);
例2.外键约束
create table card(
id int primary key,
name varchar(20)
);
create table users(
id int primary key,
name varchar(20),
card_id int,
constraint card_id_FK foreign key(card_id) references card(id)
);
insert into card(id,name) values(1,'aaa');
insert into users(id,name,card_id) values(1,'bbbb',1);
insert into users(id,name,card_id) values(2,'bbbb',2);//出错
会提示外键相关错误 insert:
insert into users(id,name) values(1,'bbbb');
insert into users values(1,"aaa"),(2,"bbb"),(3,"ccc");//批量插入多条
insert into users set id=5,name='tom';//使用set插入数据 update:
update users set name='tom';//将用户名改为tom,谨慎使用
update users set name='tom' where id=1;
update users set name='tom',sex='男' where id=2;
update employee set sala=sala+1000 where username='tom';将tom员工的薪水加1000 delete:
注意一定要与where语句配合使用,否则可能会删除所有记录
delete from table users where id=1;
delete from users;删除所有数据
truncate table employee;//删除表中所有记录,与上一个的不同是:如果表数据很多的话这个快一些,他是摧毁表再重建。使用它的话auto_increment会从1开始. select:
select * from users;
select id,name from users;
select distinct name from users;//去掉重复列
select name,(english+chinese+math+history) from student;//统计每个学生的总分
select * from student where name like '%李%';//查询姓名含有李的学生成绩
select * from student where name like '李_';//查询姓李的两个字的学生成绩
select name,math from student order by math desc;//根据数学成绩排序,默认升序
select count(*) from student;//统计个数
select count(*) from student where math>=90;//统计数学成绩大于90分的个数
......其他功能查阅文档

相关网址:
Mysql5.x手册 http://doc.mysql.cn/Mysql官网 http://dev.mysql.com/
Mysql5.7参考手册 http://dev.mysql.com/doc/refman/5.7/en/
其他参考手册CSDN-Mysql知识库

author: liuning

MYSQ系列-MYSQL基础增强(Mysql基本语句)的更多相关文章

  1. MYSQL系列-MYSQL基础增强(Myql函数)

    MYSQL基础增强(Myql函数) 在这里只介绍一些常用的,比较新颖的: 字符串函数: CONCAT://字符串连接函数 mysql> SELECT CONCAT('My', 'S', 'QL' ...

  2. (3.15)mysql基础深入——mysql默认数据库/系统数据库

    (3.15)mysql基础深入——mysql默认数据库 关键词:Mysql默认数据库,mysql系统数据库 系统数据库的组成 一共4个 [1]information_schema(可以理解成字典表) ...

  3. (3.14)mysql基础深入——mysql 日志分析工具之pt-querty-digest【待完善】

    (3.14)mysql基础深入——mysql 日志分析工具之pt-querty-digest 关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢 ...

  4. (3.13)mysql基础深入——mysql日志分析工具之mysqlsla【待完善】

    (3.13)mysql基础深入——mysql 日志分析工具之mysqlsla 关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢查询日志分析工具 ...

  5. (3.12)mysql基础深入——mysql日志文件/其他文件(socket/pid/表结构/Innodb)

    (3.12)mysql基础深入——mysql日志文件/其他文件(socket/pid/表结构/Innodb) 关键词:mysql日志文件,mysqldumpslow分析工具 目录:日志文件的分类 1. ...

  6. MySQL基础、MySQL安装和MariaDB安装

    MySQL基础 目录 MySQL基础 关系型数据库介绍 数据结构模型 RDBMS专业名词 关系型数据库的常见组件 SQL语句 MySQL安装与配置 MySQL安装 MariaDB安装 关系型数据库介绍 ...

  7. (3.16)mysql基础深入——mysql字符集

    (3.16)mysql基础深入——mysql字符集 关键字:mysql字符集,mysql编码 目录 1.概念 2.常用的字符编码 3.查看mysql字符集 [3.1]查看服务器支持的字符集 [3.2] ...

  8. (3.11)mysql基础深入——mysql文件分类与配置文件管理

    (3.11)mysql基础深入——mysql文件分类与管理 关键词:mysql配置文件,mysql参数文件,mysql中的my.cnf 目录:mysql数据库文件分类: [1]参数文件:my.cnf ...

  9. (3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析

    (3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析 my.server主要分为3大部分 [1]变量初始化部分 [2]函数声明部分 [3]具体执行部分 #!/bin/sh # ...

随机推荐

  1. SynchronizationContext应用

    这个类的应用,官方的说明并不是很多,主要原因是因为微软又出了一些基于SynchronizationContext的类.比如:BackgroundWorker 大家写程序时经常碰到子线程调用UI线程的方 ...

  2. C#Task学习

    简介: Task 对象是一种的中心思想基于任务的异步模式首次引入.NET Framework 4 中. 因为由执行工作Task对象通常以异步方式执行线程池线程上而不是以同步方式在主应用程序线程中,可以 ...

  3. go语言 defer 你不知道的秘密!

    go 语言的defer功能强大,对于资源管理非常方便,但是如果没用好,也会有陷阱哦.我们先来看几个例子. 例一: defer 是先进后出 这个很自然,后面的语句会依赖前面的资源,因此如果先前面的资源先 ...

  4. 最小生成树(kruscal算法)

    其实kruscal算法很简单,把边从小到大排一遍,如果加入此边形成环,就不加,知道这棵树有n-1条边. 代码如下(一定要理解): #include<iostream> #include&l ...

  5. 三、SpringBoot-application.properties配置文件和application.yml配置文件

    其实SpringBoot的配置文件有.properties和.yml两种形式,两种配置文件的效果类似,只不过是格式不同而已,孩儿们可以根据下面这几种张截图,通过对比端口号的配置,以及连接SQLServ ...

  6. NSData 数据

    前言 NSData 和它的可变长子类 NSMutableData 是字节缓冲区的对象化封装.我们可以获得简单缓冲区,并进行一些转换操作. 通常我们并不会直接创建字节数据,而是从其他类型的内容转换成字节 ...

  7. java 文件硬盘存取 练习

    读写文件操作 对字符流文件读写 1 写文件 FileOutputStream 节点类 负责写字节 OutputStreamWriter 转化类  负责字节到字符转换 BufferedWriter 装饰 ...

  8. react中使用echarts(人物关系图)

    项目中有时会用到echarts,可能不同的框架中语法稍有变通,前几天在react项目中遇到,写此篇以作记录. 不同的charts语法跟支持不同,本篇"echarts": " ...

  9. update 多表链接

    update Aset A.shl = A.shl - B.shl from retmxls A,daysphz Bwhere A.spid = B.spid and A.fdbs = B.fdbs ...

  10. ELK (Elasticsearch , Logstash, Kibana [+FileBeat])

    ELK 简述: ELK 是: Elasticsearch , Logstash, Kibana 简称, 它们都是开源软件. Elasticsearch[搜索]是个开源分布式基于Lucene的搜索引擎, ...