MYSQ系列-MYSQL基础增强(Mysql基本语句)
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基本语句)的更多相关文章
- MYSQL系列-MYSQL基础增强(Myql函数)
MYSQL基础增强(Myql函数) 在这里只介绍一些常用的,比较新颖的: 字符串函数: CONCAT://字符串连接函数 mysql> SELECT CONCAT('My', 'S', 'QL' ...
- (3.15)mysql基础深入——mysql默认数据库/系统数据库
(3.15)mysql基础深入——mysql默认数据库 关键词:Mysql默认数据库,mysql系统数据库 系统数据库的组成 一共4个 [1]information_schema(可以理解成字典表) ...
- (3.14)mysql基础深入——mysql 日志分析工具之pt-querty-digest【待完善】
(3.14)mysql基础深入——mysql 日志分析工具之pt-querty-digest 关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢 ...
- (3.13)mysql基础深入——mysql日志分析工具之mysqlsla【待完善】
(3.13)mysql基础深入——mysql 日志分析工具之mysqlsla 关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢查询日志分析工具 ...
- (3.12)mysql基础深入——mysql日志文件/其他文件(socket/pid/表结构/Innodb)
(3.12)mysql基础深入——mysql日志文件/其他文件(socket/pid/表结构/Innodb) 关键词:mysql日志文件,mysqldumpslow分析工具 目录:日志文件的分类 1. ...
- MySQL基础、MySQL安装和MariaDB安装
MySQL基础 目录 MySQL基础 关系型数据库介绍 数据结构模型 RDBMS专业名词 关系型数据库的常见组件 SQL语句 MySQL安装与配置 MySQL安装 MariaDB安装 关系型数据库介绍 ...
- (3.16)mysql基础深入——mysql字符集
(3.16)mysql基础深入——mysql字符集 关键字:mysql字符集,mysql编码 目录 1.概念 2.常用的字符编码 3.查看mysql字符集 [3.1]查看服务器支持的字符集 [3.2] ...
- (3.11)mysql基础深入——mysql文件分类与配置文件管理
(3.11)mysql基础深入——mysql文件分类与管理 关键词:mysql配置文件,mysql参数文件,mysql中的my.cnf 目录:mysql数据库文件分类: [1]参数文件:my.cnf ...
- (3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析
(3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析 my.server主要分为3大部分 [1]变量初始化部分 [2]函数声明部分 [3]具体执行部分 #!/bin/sh # ...
随机推荐
- android 仿QQ气泡聊天界面
1.现在的QQ,微信等一些APP的聊天界面都是气泡聊天界面,左边是接收到的消息,右边是发送的消息, 这个效果其实就是一个ListView在加载它的Item的时候,分别用了不同的布局xml文件. 2.效 ...
- android 透明弹出搜索框
1.在QQ一些APP当中有是弹出一个半透明的搜索框的,其实这种效果就是很多种方法,自定义一个Dialog,或者直接将activity的背景变成半透明的也可以的. 下面就是将activity变成半透明的 ...
- SQL/T-SQL实例参考-2
对多关联查询,查询多中的记录,但是返回一的结果集 子查询语法 --一对多关联查询,查询多中的记录,但是返回一的结果集 SELECT C.* FROM ( SELECT A.BasicID FROM [ ...
- ecliplse启动慢的优化方法(亲测有效)
本人使用的ecliplse IDE 版本是: Version: Photon Release (4.8.0)Build id: 20180619-1200 我的电脑配置是 Ecliplse启动差不多一 ...
- kali linux之漏洞扫描
发现弱点:基于端口服务扫描结果版本信息,搜索已公开的漏洞数据库 使用弱点扫描器实现漏洞管理 弱点扫描类型(扫描结果不能确定是不是准确的,应该综合对待威胁) 主动扫描:有身份验证,无身份验证 被动扫描: ...
- k8s(未完待续)
K8s简介Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展. 使用Kubernetes可以 自动化容器的部署和复制 随时扩展或收缩容器规模 将容器 ...
- php代码书写习惯优化小结
(1)使用 static 静态方法比普通方法快4倍(2)echo输出快于print(3)连接字符使用 , 代替 .(4)循环之前先取出最大值,而不是在循环里面取值 正确的方法 $max ...
- UICollectionView 如何定制每个Cell的Size
最新用UICollectionView遇到挺多坑,差点让我废寝忘食了,虽然UICollectionView 逼格比UITableView高,但是真正想定制起来,特别是刚开始是用,真麻痹的到处都是坑,弄 ...
- php 实现无限极分类
原始数据 $array = array( array('id' => 1, 'pid' => 0, 'n' => '河北省'), array('id' => 2, 'pid' ...
- LeetCode154.寻找旋转排序数组中的最小值 II
154.寻找旋转排序数组中的最小值 II 描述 假设按照升序排序的数组在预先未知的某个点上进行了旋转. ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] ). ...