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 # ...
随机推荐
- Oracle Cannot Update TOP N Issue, 请专家解答
大家好 上周写了匿名方法一文,很多读者,很高兴,相信我们已经从大伙的回复中,对.NET又有了更深刻的认识. 好,现在说主题,各类数据库都有相应更新本表top n的方案.现在我一一举例 首先看表结构如下 ...
- WinForm中TabControl的使用
TabControl和TabPage之间有一个默认颜色的边框,很难去除,需要重写TabControl控件重绘区域 public class FullTabControl : TabControl { ...
- XXX培训机构Python自动化教程目录
- day08.2-ssh远程连接服务
在Linux环境中,部署一个服务的一般步骤: a). 准备环境,包括 关闭防火墙:service iptables stop(或chkconfig iptables off) 关闭se ...
- kali linux之BurpSuite
web安全工具中的瑞士军刀,统一的集成工具发现web安全漏洞 所有的工具共享一个能处理并显示http消息的可扩展框架, 模块之间无缝交换信息. 有free版和professional版,java开发, ...
- Java面向对象之异常(异常处理方式)
一.基础概念 (1)异常:Java程序在运行时期发生的不正常情况. Java就按照面向对象的思想对不正常情况进行描述和对象的封装. (2)异常问题分类: (Throwable:定义对于问题共性的功能. ...
- vmware vSphere虚拟网络(一)
为了更好的了解vSphere网络虚拟化解决方案,这里引入了一些概念,以便我们更好的了解虚拟网络. 一.网卡: 物理网卡称为vmnic,在ESXi中,第一块物理网卡叫做vmnic0,第二块叫做vmnic ...
- 《Andrew Ng深度学习》笔记5
深层神经网络 深层神经网络的组成如图,这里主要是深层神经网络符号的定义. 为什么要用深层神经网络,有什么好处?这里主要是分层的思想.在软件工程中,如果问题遇到困难,一般是通过“加多”一层的方法来解决, ...
- python获取函数参数默认值的两种方法
1.使用函数的__defaults__魔术方法 demo: # coding=utf-8 def f(a,b,c=1): pass f.__defaults__ 输出结果: (1,) 2.使用insp ...
- QT中QWidget、QDialog以及MainWindow的区别
参考 http://blog.csdn.net/u011619422/article/details/47311101 QT中QWidget.QDialog以及MainWindow的区别 QWidge ...