MySQL整理(一)
一、数据管理发展阶段
人工管理阶段→文件系统阶段→数据库系统阶段
二、数据库管理系统提供的功能
(1)数据定义语言DDL:提供数据定义语言定义数据库及各种对象,定义数据的完整性约束和保密限制等约束。
(2)数据操作语言DML:提供数据操作语言操作数据,主要分两类:检索(查询)和更新(插入,删除,更新)
(3)数据控制语言DCL:提供数据控制语言控制数据库的完整性限制,数据安全性控制等。
三、为什么使用MySQL
MySQL是由原MySQL AB公司自主研发的,目前已被Sun公司收购,是目前IT行业最流行的开源数据库管理系统,同时它也是一个支持多线程高并发多用户的关系型数据库管理系统。
(1)功能性:满足通用商业需求
(2)易用性:相对于大型的商业数据库管理系统,MYSQL对于普通用户来说,它的易用性高,安装包小,创建数据库等操作简单。
(3)性能:在权威的第三方评测机构多次测试比较各种数据库TPCC值(TPCC-MySQL是Percona公司研发的基准测试工具)的过程中,MySQL一直都有非常优异的表现,而且在其他所有商用的通用数据库管理系统中,仅仅有Oracle数据库能够与其一较高下
(4)可靠性:排在全球前10位的大型网站里面,都有部分业务是运行在MySQL数据库环境上的,如yahoo、google等。
总体来说,MySQL数据库在发展过程中一直追求三项原则:简单、高效、可靠。
四、MySQL相关命令
|
DOS窗口连接MySQL |
mysql –h 127.0.0.1 –u root -p |
|
显示所有数据库 |
show databases; |
|
创建数据库 |
create database kk; |
|
使用指定数据库 |
use kk; |
|
删除数据库 |
drop database kk; |
|
显示存储引擎列表 |
show engines; |
|
查看默认存储引擎 |
show variables like‘storage_engine%’ |
|
创建表 |
create table 表名( id int, name varchar(20), age float ); |
|
查看表定义 |
describe 表名 |
|
修改表名 |
alter table 老表名 rename 新表名 |
|
在表的最后一个位置增加字段 |
alter table 表名 add 字段名 字段类型定义 |
|
在表的第一个位置增加字段 |
alter table 表名 add 字段名 字段类型定义 first |
|
在表的指定字段后增加字段 |
alter table 表名 add 字段名 字段类型定义 after 指定字段 |
|
删除字段 |
alter table表名 drop 字段名 |
|
修改字段定义 |
alter table 表名 modify 字段名 字段类型定义 |
|
修改字段名称 |
alter table 表名 change 旧字段名 新字段名 旧字段数据类型定义 |
|
修改字段名称及数据类型 |
alter table 表名 change 旧字段名 新字段名 新字段数据类型定义 |
|
修改字段位置 |
alter table 表名 modify 字段名 数据类型 first (将字段调整到第一个位置) Alter table 表名 modify 字段名1 数据类型 after 字段名2 |
五、MySQL存储引擎和数据类型
1.1、MySQL引入了存储引擎的概念,由于存储引擎是以插件的形式被引入,所以需要根据实际应用和领域来选择相应的存储引擎;如果想创建表,需要了解数据类型,而存储引擎决定了表中可以存储的数据类型。
其中一种引擎的参数如下:
Engine: InnoDB
Support: DEFAULT
Comment: Supports transactions, row-level locking, and foreign keys
Transactions: YES
XA: YES
Savepoints: YES
(1) Engine:存储引擎名称
(2) Support:表示MySQL是否支持该存储引擎,DEFAULT表示默认使用
(3) Comment:表示关于存储引擎的简要评论
(4) Transactions:表示存储引擎是否支持事务
(5) XA:表示该存储引擎所支持的分布式存储是否符合XA规范
(6) Savepoints:表示该存储过程是否支持事务处理中的保存点
1.2、MySQL存储引擎支持的数据类型有整数类型,浮点数类型,定点数类型和位类型,日期和时间类型,字符串类型。
(1)存储小数数据,可选择float或double,需精确到小数点后10位以上的,需要选择double类型。
(2)定点数类型(参与运算的数的小数点位置固定不变)DEC(M,D)与DECIMAL(M,D)精确到比double还高,有效取值范围由M(数据总长度)和D(小数点后长度)
(3)年月日的使用一般是DATE类型,年月日时分秒是DATETIME类型。若经常插入或更新的时间为系统当前时间,一般使用TIMESTAMP类型。时分秒为Time类型。年份用YEAR。
(4)存储少量字符串可选用CHAR和VARCHAR类型,如果需要经常发生变化,选VARCHAR类型。
(5)BLOB和TEXT文本类型十分相似,不同的是前者可以存储二进制数据(图片,音频文件),而后者只能存储字符数据。
(6)BINARY和VARBINARY 与 CHAR和VARCHAR字符串类型十分相似,不同的是前者可以存储二进制数据(图片,音频文件),而后者只能存储字符数据。
MySQL整理(一)的更多相关文章
- MYSQL整理的语法
MYSQL整理的语法 http://www.cnblogs.com/suoning/p/5744849.html
- .NetCore中EFCore for MySql整理(三)之Pomelo.EntityFrameworkCore.MySql
一.Pomelo.EntityFrameworkCore.MySql简介 Git源代码地址:https://github.com/PomeloFoundation/Pomelo.EntityFrame ...
- .NetCore中EFCore for MySql整理(二)
一.简介 EF Core for MySql的官方版本MySql.Data.EntityFrameworkCore 目前正是版已经可用当前版本v6.10,对于以前的预览版参考:http://www.c ...
- MySQL整理碎片
1 innodb引擎表 alter table TABLE_NAME engine='innodb'; 还有一种方法 optiize table TABLE_NAME; http://stackove ...
- .NetCore中EFCore for MySql整理
一.MySql官方提供了Ef Core对MySql的支持,但现在还处于预览版 Install-Package MySql.Data.EntityFrameworkCore -Pre Install-P ...
- 我的MySQL整理
MySql unique的实现原理简析 MYSQL操作 MySql数据类型(转) MySql数据类型 MySql和CSV MySql超新手入门(很好的Mysql学习教材) MySql加锁处理分析 My ...
- mysql整理
一.建表(创建一个简单的用户权限关系表) 1.user(用户表) CREATE TABLE `user` ( `username` ) NOT NULL, `password` ) DEFAULT N ...
- 补充:MySQL整理
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...
- MySQL整理(三)
一.简单单表操作 (1)简单CRUD 插入查询结果 insert into table1(id,name,age) select id,name,age from table2 where id ...
- MySQL整理(二)
一.MySQL操作表的约束 MySQL提供了一系列机制来检查数据库表中的数据是否满足规定条件,以此来保证数据库表中数据的准确性和一致性,这种机制就是约束. (1)设置非空约束(NOT NULL),唯一 ...
随机推荐
- 常用的easyui使用方法之二
-------datagrid 1.获取某行的行号(row)tdg.datagrid('getRowIndex',rows)2.通过行号移除该行tdg.datagrid('deleteRow',ind ...
- json剥离
String json=get("http://www.weather.com.cn/data/cityinfo/101010100.html"); JSONObject json ...
- 我们把Mybatis的功能架构分为三层:
我们把Mybatis的功能架构分为三层: (1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库.接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理. (2) ...
- MyBatis应用程序根据XML配置文件创建SqlSessionFactory
MyBatis应用程序根据XML配置文件创建SqlSessionFactory,SqlSessionFactory在根据配置,配置来源于两个地方,一处是配置文件,一处是Java代码的注解,获取一个Sq ...
- 【UVa】Partitioning by Palindromes(dp)
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=27&page=sh ...
- 【BZOJ】1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富(dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=1668 裸dp.. f[i][j]表示i行j列最大能拿到 f[i][j]=max(f[i+1][j-1 ...
- 常用的jQuery前端技巧收集
调试时巧用console.log(),这比用alert()方便多了. jquery易错点:元素拼接的时候,元素还未添加到DOM,就用该预添加元素操作. ajax动态获取的数据,还没有装载html元素, ...
- hdu 4496(并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4496. 思路:简单并查集应用,从后往前算就可以了. #include<iostream> ...
- MySQL------存储过程的使用
如图: 1.创建存储过程 create procudure userAdd(na varchar(20),pass varchar(20)) select * from user where name ...
- 统计nginx进程占用的物理内存
#!/usr/bin/env python #-*- coding:utf-8 -*- ''' 统计nginx进程占用的物理内存 ''' import os import sys import sub ...