第十四章-MySQL
1 安装
MySQL常见的版本
GA: 广泛使用的版本
RC: 最接近正式版本
Alpha和Bean: 内测版本和公测版本
有两种安装方式: 安装包和压缩包
1) 安装msi文件





2) 解压zip文件
解压之后, 添加bin目录到环境变量
进入bin目录下初始化配置
mysqld --initialize-insecure
安装windows启动服务
"c:\mysql-5.7.16-winx64\bin\mysqld" --install
启动服务
net start mysql
登录数据库
mysql -u root -p
2 数据库概念
数据库管理技术的发展阶段
人工管理
文件管理
数据库系统
数据库的分类
1 层次数据库和网状数据库
解决数据集中和共享问题
2 关系型数据库
解决数据库独立性和抽象级别
明确数据的存储结构
将数据结构归结为简单的二元关系
3 非关系型数据库
NoSQL(Not Only SQL)泛指非关系型数据库, 主要应用于超大规模和高并发
键值存储数据库
主要使用哈希表, 通过键来添加查询删除数据
典型产品: Redis
列存储数据库
将数据存储在列族中, 通常被用来存储分布式海量数据
典型产品: HBase
面向文档数据库
基于版本化的文档, 可以通过json存储数据, 可以被认为是键值存储数据库的升级版
典型产品: MongoDB, CouchDB
图形数据库
循序数据以图的形式存储, 实体被称为定点, 实体之间的关系是边
典型产品: Neo4J
DB数据库
DBMS数据库管理系统
DBS数据库系统
DDL数据库定义语言
DML数据操作语言
DCL数据控制语言
3 数据库与数据库对象
系统数据的作用

数据库: 存储数据库对象的容器
数据库对象: 存储, 管理, 和使用数据的不同结构形式, 主要包含表, 视图, 存储过程, 函数, 触发器和事件等
(1) 查看数据库
show databases;
(2) 使用数据库
use 数据库名字;
(3) 创建数据库
create database 数据库名 default charset "utf8";
设置好数据库的字符集
注意数据库的名称设置
长度要小于128位
(4) 删除数据库
drop database 数据库名;
4 引擎和数据类型
引擎决定了表在计算机的存储方式, 如何存储和索引数据, 是否支持事务
查看数据库支持的引擎
show engines;
一般地:
执行命令要有命令结束, 一般用; /g 和/G
前两个效果相同, /G可以帮助更美观的显示
数据类型
(1) 整数类型
tinyint, smallint, mediumint, int/intrger, bigint
对应的存储字节数是1, 2, 3, 4, 8
(2) 浮点数类型
float, double
存储字节是4, 8
(3) 日期时间
date, datetime, timestamp, time, year

(4) 字符串类型
char(个数), varchar(个数)
varchar是变长的字符串
tinytext, text, mediumtext, longtext
5 表的操作
表的操作包含创建表, 查看表, 删除表, 修改表, 这些操作是最基本的表管理操作
表示指代一个二维关系的数据
行: 记录
列: 字段
索引: 根据指定的数据库表建立起来的顺序, 提供了快速访问数据的途径, 并且可以监督表中的数据, 使其索引指向的列中的数据不重复
触发器: 根据用户自定义的事物命令的集合, 当一个表的赎金更改时就会执行这组命令
用于确保数据的完整性和安全性
(1) 创建表
create table 表名{
属性名 数据类型 约束条件;
...
}
(2) 查看表的结构
desc 表名;
(3) 查看表的详细定义
show create table 表名;
(4) 删除表
drop table 表名;
(5) 修改表名
alter table 原表名 rename 新表名;
(6) 给表增加一列
alter table 表名 add 列名 列类型 (first/ after 属性名);
默认是在最后一列加上
如果需要在最开始加上 可以加上关键字first
或者指定再某一属性之后 after 某属性名
(7) 删除一列
alter table 表名 drop 属性名;
(8) 修改列的属性
alter table 表名 modify 属性名 数据类型;
修改列的名字
alter table 表名 change 原来属性名 新的属性名 数据类型;
(9) 表的约束
NOT NULL : 非空
default 默认值 : 设置默认值
unique : 唯一值, 不允许重复的值
primary key : 主键
auto_increment : 自动增长
foreign key : 外键
constraint 外键约束名 foreign key (列名) references 表名(列名)
参考链接
第十四章-MySQL的更多相关文章
- 《Linux命令行与shell脚本编程大全》 第十四章 学习笔记
第十四章:呈现数据 理解输入与输出 标准文件描述符 文件描述符 缩写 描述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1.STDIN 代表标准输入.对于终端界面 ...
- perl 第十四章 Perl5的包和模块
第十四章 Perl5的包和模块 by flamephoenix 一.require函数 1.require函数和子程序库 2.用require指定Perl版本二.包 1.包的定义 2.在包间切 ...
- Gradle 1.12 翻译——第十四章. 教程 - 杂七杂八
有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...
- C和指针 (pointers on C)——第十四章:预处理器
第十四章 预处理器 我跳过了先进的指针主题的章节. 太多的技巧,太学科不适合今天的我.但我真的读,读懂.假设谁读了私下能够交流一下.有的小技巧还是非常有意思. 预处理器这一章的内容.大家肯定都用过.什 ...
- CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章
第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...
- JavaScript高级程序设计:第十四章
第十四章 一.表单的基础知识 在HTML中,表单是由<form>元素来表示的,而在javascript中,表单对应的则是HTMLFormElement类型.HTMLFormElement继 ...
- 第四章 MySQL高级查询(二)
第四章 MySQL高级查询(二) 一.EXISTS子查询 在执行create 或drop语句之前,可以使用exists语句判断该数据库对像是否存在,返回值是true或false.除此之外,exists ...
- C#语言和SQL Server第十三 十四章笔记
十三章 使用ADO.NET访问数据库 十四章使用ADO.NET查询和操作数据库 十三章: ...
- Gradle 1.12用户指南翻译——第二十四章. Groovy 插件
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
随机推荐
- Matlab 绘图全方位分析及源码
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- RFS+AutoItLibrary测试Web对话框
Selenium2library在我们实际测试web页面的时候基本上已经够用了,不过还是会有部分情况下会脱离Selenium2library的控制,无法进行操作.比如说下载文件的时候,要选择保存文件在 ...
- 用命令行执行ROBOT FRAMEWORK
除了在ride中执行用例,我们也可以通过命令行的形式执行用例. 1.执行一整个项目 pybot+项目路径 2.执行某个测试集 pybot+测试集的路径 3.执行某个测试集里面的某个用例 pybot - ...
- MagicalRecord使用教程【转载】
原文地址:http://www.ithao123.cn/content-96403.html 下面是在xcode5.1下ARC环境中的使用教程 1. 将 MagicalRecord 文件夹拖入到工程文 ...
- MariaDB mysql 比较区别 选择
MariaDB数据库管理系统是MySQL的一个分支 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险. MariaDB的目的是 ...
- Docker入门系列4:命令行小结
百度Baidu App Engine(BAE)平台也是以Docker作为其PaaS云基础. 目的就是为了解决以下问题: 1) 环境管理复杂: 从各种OS到各种中间件再到各种App,一款产品能够成功发布 ...
- os引导程序boot 在根目录区寻找os加载程序文件loader 对应的根目录条目
[0]README 0.0) source code from orange's implemention of a os and for complete code , please visit h ...
- 【PHP开发】用curl向https发请求时的35号错误
放了个假发现以前写的程序的模拟登陆不管用了,中间输出,发现curl向https发请求时没有返回数据,输出错误信息,得到: curl_errno($ch) -----> 35 curl_error ...
- java设计模式之迭代器模式
一.迭代器模式简介 迭代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示. 迭代器模式让我们能游走于聚合内的每一个元素,而又不暴露内部的表示.把游走的任务放在迭代器上,而不是 ...
- 九度OJ 1160:放苹果 (DFS)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:998 解决:680 题目描述: 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和 ...
