Mysql 入门概念

Mysql入门很简单概念篇

前言:Mysql有瑞士公司MySQLAB开发的,2008年被SUN公司10亿美元收购,2010年被oracle公司收购,带来了机遇和挑战, Mysql相对sql server和oracle比较简单,

Mysql数据库基础(1-3)章

介绍了数据库的概述,数据库的安装(windows/linux环境下)mysql的获取、mysql的基础知识

数据库概述
数据库就是存储数据的仓库,可以方便存储和管理数据,它将数据按照特定的规律存放在磁盘上 通过数据库管理系统,可以有效地管理和维护数据库

数据库存储方式:
数据库存储方式分为三个阶段人工管理阶段、文件系统管理阶段、数据库系统管理阶段

人工管理阶段: 通过人来管理和分类数据,需要大量纸张

文件系统管理阶段:
将数据存放在磁盘上,磁盘是通过文件系统来管理的,文件系统通过文件的路径和 名字来管理查找数据,相比还是不能满足用户的要求,

数据库管理系统:
通过数据库系统来管理数据,不必关心数据存放磁盘的位置,数据库可以建 库和表,表是数据库的基本单位,表是有字段组成,比如一个学校要为student建库, 为每个班级的学生建表,表且有学号、性别籍贯等字段组成
现在常见的数据库为oracle/mysql/sqlserver,都为关系型数据库,关系数据库中的表都是二维表

数据库泛型:
数据库泛型就是数据库遵循的规则,又叫范式,数据库范式分为第一范式(1NF) 第二范
式(2NF) 第三范式(3NF) BCN范式 数据库最起码要满足第一范式,在一个表中不能出现相同字段且字段不能再拆分,不然不 满足第一范式就称不上关系型数据库,在满足第一范式的基础上进行细化才满足第二范式, 化后再细化才能满足第三范式、BCN范式 例如:一个学生的学号、院系号、院系名这三 段,因为学号可以决定院系号,院系号可以决定院系名所以这个称不上第二范式,现在对 行细化,学号 院系号在一张表上,院系号,院系名在一张表上 这样就满足了第二范式的要求 ,通常数据库能够满足第三范式就是一个很好的数据库了,这样数据上基本上没有冗余数据了 但是为了数据库的查询方便,通常让数据库的某些表有些荣誉,这是为了提高数据库的性能, 并不是数据库满足的范式越高越好,只要数据库的设计能提高整个系统的性能,这就是一个合理得数据库

数据库在开发中的作用:
大部分管理系统和软件都需要和数据库进行交互,将数据存放到数据库中,比如一个银行,就需要通过管理系统将用户的账号、金额等信息与数据库进行交互,在管理系统界面登录账号,此时与数据库验证是否有此账号,如果有则可以登录然后增删改查数据数据库已经成为软件开发必不可少的一部分

数据库系统

很多人误以为数据库就是数据库系统(Datebase system)其实数据库系统要比数据库大的多。数据库系统包括数据库、数据库管理 系统、应用系统开发工具等,数据库管理系统(DBMS)是用来管理和维护数据库的,而应用平台是用来使用数据的,应用开发工具是用来开发应用系统的,数据库系统还包括数据库管理员和用户,一般大型公司都需要专门的数据库管理人员(DBA)来管理数据,比如网易就有专业的DBA组

SQL语言:
数据库管理系统通过SQL(结构化查询语言)语言进行操作,是有IBM公司开发的,SQL语言包括DDL DML DCL,

  • DDL:数据库定义语言 主要用于创建数据库、表、视图,create用于创建库、表、视图 alter用于修改库、表、视图 Drop用于删除库、表、视图
  • DML:数据库操纵语言,用于操作数据库,insert插入 delete 删除 update改 select查询

  • DCL:数据库控制语言,Grant给数据库授权 Revoke用于删除权限

数据库访问技术:
应用程序访问数据库必须通过相应的接口才可以访问,不然在网站程序中嵌入sql语言是不生效的,

  1. ODBC是早期的数据库访问技术,安装相应的驱动conector/odbc访问数据库
  2. Java语言通过jdbc访问数据库,使用的时候必须安装相应的驱动conector/j
  3. C#语言通过ADO.NET ADO.net是微软开发的
  4. Php语言中加入了mysql功能模块,php5以后提供mysqli接口访问数据库,php可以通过mysql功能模块和mysqli接

字符串
字符串分为CHAR VARCHAR BLOB TEXT ENUM SET等类型, Char和varchar 存储格式为 char(m) varchar(m) 字符串类型参数指定了数据类型是char类型还是varchar类型,m是指定的最大长度 Char的m范围 0-255 varchar的m取值范围0-65535
Char(5)指定多大长度就占用多大字节,varchar(5) 看实际用了多少就分配多少,varchar类型实际占用的空间为字符串的实际长度加1,
Note: ‘123 ‘char类型输入会自动把空格去掉,varchar类型会留下空格

TEXT类型
Text类型是一种特殊的字符串类型,只能报错字符数据,分为tinytext test mediumtext longtext 允许的字节长度和存储空间有所不同,根据需求选取既能满足需要又最节约空间的类型即可

第五章 操作数据库

1.创建数据库 就是在数据库系统划出一部分空间,存储相应的数据

Query OK,1 rows affected (0.01 sec) 表示(创建、修改、删除)成功,1行受到影响,处理时间为0.01s
如:4 rows in set(0.00s) 表示集合中有4行信息,处理时间为0s,并不是真的没有花费时间,而是时间非常短,小于0.01s

** 删除数据库**
删除数据库原来分配给该数据库的空间会被回收,删除数据库会删除该数据库中所有的表
和表中所有的数据,所以删除数据库要特别谨慎,建议删除前先备份再删除

  1. 数据库引擎
    数据库引擎实际上就是表的存储类型,mysql是一种插入式的存储引擎概念,这就决定了mysql中的表可以以不同的方式进行存储,用户可以根据自己的需求选择表的存储方式,以及是否进行事务处理
  • show engines; 显示mysql数据库支持的引擎方式, g和;效果一样 G让结果显示的更美观
原文地址:https://www.cnblogs.com/chblogs/p/7113558.html