一、数据管理发展阶段

    人工管理阶段→文件系统阶段→数据库系统阶段

    二、数据库管理系统提供的功能

     (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整理(一)的更多相关文章

  1. MYSQL整理的语法

    MYSQL整理的语法 http://www.cnblogs.com/suoning/p/5744849.html

  2. .NetCore中EFCore for MySql整理(三)之Pomelo.EntityFrameworkCore.MySql

    一.Pomelo.EntityFrameworkCore.MySql简介 Git源代码地址:https://github.com/PomeloFoundation/Pomelo.EntityFrame ...

  3. .NetCore中EFCore for MySql整理(二)

    一.简介 EF Core for MySql的官方版本MySql.Data.EntityFrameworkCore 目前正是版已经可用当前版本v6.10,对于以前的预览版参考:http://www.c ...

  4. MySQL整理碎片

    1 innodb引擎表 alter table TABLE_NAME engine='innodb'; 还有一种方法 optiize table TABLE_NAME; http://stackove ...

  5. .NetCore中EFCore for MySql整理

    一.MySql官方提供了Ef Core对MySql的支持,但现在还处于预览版 Install-Package MySql.Data.EntityFrameworkCore -Pre Install-P ...

  6. 我的MySQL整理

    MySql unique的实现原理简析 MYSQL操作 MySql数据类型(转) MySql数据类型 MySql和CSV MySql超新手入门(很好的Mysql学习教材) MySql加锁处理分析 My ...

  7. mysql整理

    一.建表(创建一个简单的用户权限关系表) 1.user(用户表) CREATE TABLE `user` ( `username` ) NOT NULL, `password` ) DEFAULT N ...

  8. 补充:MySQL整理

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...

  9. MySQL整理(三)

     一.简单单表操作   (1)简单CRUD 插入查询结果 insert into table1(id,name,age) select id,name,age from table2 where id ...

  10. MySQL整理(二)

    一.MySQL操作表的约束 MySQL提供了一系列机制来检查数据库表中的数据是否满足规定条件,以此来保证数据库表中数据的准确性和一致性,这种机制就是约束. (1)设置非空约束(NOT NULL),唯一 ...

随机推荐

  1. Easyui Datagrid相同连续列合并扩展(二)

    JS: //合并相同数据的单元格 function MergeCells(seletor, rows, fields) { if(rows == null || rows.length == 0 || ...

  2. 数据库 proc编程六

    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <stri ...

  3. 【转】【Linux】grep命令详解

    简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...

  4. 《敏捷软件开发-原则、方法与实践》-Robert C. Martin读书笔记(转)

    Review of Agile Software Development: Principles, Patterns, and Practices 本书主要包含4部分内容,这些内容对于今天的软件工程师 ...

  5. 【BZOJ】1047: [HAOI2007]理想的正方形(单调队列/~二维rmq+树状数组套树状数组)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1047 树状数组套树状数组真心没用QAQ....首先它不能修改..而不修改的可以用单调队列做掉,而且更 ...

  6. uc 调试

    UC浏览器开发者版 目录[隐藏] 1 关于RI 2 准备工作 3 调试方式 相关下载 1 关于RI 目前,在手机上使用浏览器访问网页,无法便捷地进行网页语言调试.手机屏幕相对较小且操作不便,直接在手机 ...

  7. C++ STL迭代器与索引相互转换

    0 前言 C++ STL提供了vector.list等模板容器,极大地方便了编程使用. “遍历”是对容器使用的最常用的操作. 使用迭代器来遍历是最好最高效的遍历方法. 当然,对于有些容器的遍历除了使用 ...

  8. hdu 1513(dp+滚动数组)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1513 思路:n这么大,可以采用滚动数组,然后就是求原串和反串的LCS了. #include<io ...

  9. ETL概念,ETL流程

    ETL是将业务系统的数据经过抽取.清洗转换之后加载到数据仓库的过程,目的是将企业中的分散.零乱.标准不统一的数据整合到一起,为企业的决策提供分析依据. ETL是BI项目重要的一个环节. 通常情况下,在 ...

  10. 第十篇:Linux中权限的再讨论( 上 )

    前言 在Linux系统中,用户分为 个权限位.好了,很多朋友对于Linux权限的了解就仅限于此了.但,Linux目录权限和文件权限一样吗?内核对于权限的检查过程又是怎样的? 如果你不清楚,本文将为你解 ...