MySql随笔part1

一:概述

数据库(DataBase,简称DB)

  数据库产生于20世纪60年代末,是数据管理的最新数据,是计算机领域非常重要的的技术.

  简单来说,数据库就是存放数据的仓库,这个仓库按照一定的数据结构1,来组织,存储的,我们可以通过数据库提供的多种方式管理数据库中的数据.

  数据库分为 1.关系型数据库2.非关系型数据库.

    1.数据结构--数据的组织形式|数据之间的的联系.

  

数据库表(table)

  数据表是关系型数据库中重要的对象,是其他对象的基础,是一系列二维数组的集合,用来存储,操作数据库的逻辑结构.根据信息的分类/业务逻辑等情况,一个数据库中可能包含若干数据表,每张表室友行和列组成,记录一条数据,数据表就增加一行,每一列是由字段名和字段数据组合而成,每一列被称之为一个字段.

 

数据(data)

  数据在表中的信息就叫做数据.

数据库系统有3个主要的组成部分

   1.数据库(Database System):用于存储数据的地方。

   2.数据库管理系统(Database Management System,DBMS):用户管理数据库的软件。

   3.数据库应用程序(Database Application):为了提高数据库系统的处理能力所使用的管理数据库的软件补充。

数据库的发展史(五个阶段)

   1.文件系统

      数据库系统的萌芽阶段,通过文件来存取数据. 文件系统是数据库系统的萌芽阶段,出现在上世纪五六十年代,可以提供简单的数据存取功能,但无法提供完整、统一的数据管理功能,例如复杂查询等。所以在管理较少、较简单的数据或者只是用来存取简单数据,没有复杂操作的情况下,会使用文件系统    
   2.层次型数据库

      数据库系统真正开始阶段,数据的存储形式类似树形结构,所以也叫树型数据库.    

   3.网状数据库

      数据的存储形式类似网状结构. 从二十世纪六十年代开始,第一代数据库系统(层次模型数据库系统、网状模型数据库系统)相继问世,它们为统一管理和共享数据提供了有力的支撑 在这个阶段,网状模型数据库由于它的复杂、专用性,没有被广泛使用。而在层次模型数据库中,IBM公司的IMS(Information Management System,信息管理系统)层次模型数据库系统则得到了极大的发展,一度成为最大的数据库管理系统,拥有巨大的客户群

   4.关系型数据库

       二十世纪七十年代初,关系型数据库系统开始走上历史舞台,并一直保持着蓬勃的生命力.关系型数据库系统使用结构化查询语言(Structured Query Language,SQL)作为数据库定义语言DDL和数据库操作语言DML

   5.面向对象数据库

       把面向对象的方法和数据库技术结合起来,可以使数据库系统的分析、设计最大程度地与人们对客观世界的认识相一致,并且能够有效的为面向对象程序提供更好的数据库支撑

二:数据库特点

1.实现数据共享

  数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

2.减少数据冗余

  同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

3.保证数据一致性和和维护性,以确保数据的安全性和可靠性

  1.安全性控制:以防止数据丢失、错误更新和越权使用;

  2.保证数据的正确性、有效性和相容性;

  3.使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用。

4.故障恢复

  由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。

三:数据库分类

  在当今的互联网中,最常见的数据库模型主要有两种:关系型数据库与非关系型数据库

    1.关系型数据库介绍

      1)是把复杂的数据结构归结为简单的二元关系(即二维表格形式).

      2)目前主流的关系型数据库:MySQL、Oracle 、 Sql server、DB2 等

    2.非关系型数据库介绍

      1)非关系型数据库诞生背景

        非关系型数据库也被成为NoSQL数据库,NOSQL的本意是“Not Only SQL”.而不是“No SQL”的意思,因此,NoSQL的产生并不是要彻底地否定非关系型数据库,而是作为传统关系型数据库的一个有效补充。NOSQL数据库在特定的场景下可以发挥出难以想象的高效率和高性能

         随着互联网Web2.0网站的兴起,传统的关系型数据库在应付web2,0网站,特别是对于规模日益扩大的海量数据,超大规模和高并发的微博、微信、SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题。

        例如:传统的关系型数据库IO瓶颈、性能瓶颈都难以有效突破,于是出现了大批针对特定场景,以高性能和使用便利为目的功能特异化的数据库产品。NOSQL(非关系型)类的数据就是在这样的情景下诞生并得到了非常迅速的发展 

      2)NOSQL非关系型数据库小结:

        1、NOSQL不是否定关系数据库,而是作为关系数据库的一个重要补充 

        2、NOSQL为了高性能、高并发而生,但是要求对数据一致性要求不能高 

        3、NOSQL典型产品memcached (纯内存,k-v),redis(持久化缓存,k-v),mongodb(文档的数据库,xml-json)

四:MySQL介绍

  MySQL 数据库:是互联网领域里一款最重要的,深受广大用户欢迎的开源关系型数据库软件之一、由瑞典MySQL AB公司开发与维护。2008年。MySQL AB公司被SUN公司收购,2009年,SUN公司又被传统数据数据库领域大佬甲骨文(oracle)公司收购,因此,MySQL数据库软件目前属于Oracle公司,成为传统数据库领域老大的又一个数据库产品,甲骨文公司收购MySQL后,使得自身在商业数据库与开源软件领域市场占有份额都跃居第一的位置,这样的格局,引起了很多人的担忧,这种担忧直接导致后来的Mysql分支数据库MariaDB的诞生于发展。

 

 

五:SQL

  SQL:(Structured Query Language)是结构化查询语言的缩写,是专门用来与数据库管理系统交互的语言.是关系型数据库的标准语言,主要用于存取数据,查询数据,更新数据和管理数据库系统等操作.

  具体可以把SQL分为4个部分:

    数据控制语言 ( DCL): 主要用于控制用户的访问权限。其中GRANT语句用于给用户增加权限,REVOKE语句用于收回用户的权限.

1 增:create database db_name charset utf8;
2 查:show databases;
3 改:alter database db_name charset latin1;
4 删除:drop database db_name;

 

    数据定义语言(DDL):DROP、CREATE、ALTER等语句;数据库定义语言。主要用于定义数据库,表,视图,索引和触发器等。CREATE语句主要用于创建数据库,创建表,创建视图。ALTER语句主要用于修改表的定义,修改视图的定义。DROP语句主要用于删除数据库,删除表和删除视图等.

 1 先切换到数据所在的数据库:
 2 use db_name
 3 增:create table t_name (
 4 id int,//字段1 格式
 5 name char//字段2 格式    最后一个字段之后不要加逗号
 7 );
 8 查:show tables
 9 改:alter table t_name modify 字段 格式;//modify只能更改格式
10     alter table t_name change 旧字段 新字段 格式;//change可以更改格式和字段名
11 删:drop table t_name;

 

    数据操作语言(DML):INSERT、UPDATE、DELETE语句;数据库操作语言。主要用于插入数据,更新数据,删除数据。INSERT语句用于插入数据,UPDATE语句用于更新数据,DELETE语句用于删除数据.

 1 增:insert into t_name values(字段1,字段2.......),(字段1,字段2........);
 2 //字段个数由表结构决定,每一行数据之间用逗号隔开
 3 查:select * from t_name;
 4 改:update t_name set 字段 = '数据' where id=id数;
 5 //where为筛选条件
 6 删:delete from t_name where id = id数;
 7 
 8 清空表:
 9     delete from t_name 如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始.
10     truncate table t_name;数据量大,删除数据比上一条快,且直接从零开始.
11 
12     auto_increment : 自增
13     primary key : 约束(不能重复且不能为空),可以加速查找.

 

 

    数据查询语言(DQL):SELECT语句。主要用于查询数据.

 

转载于:https://www.cnblogs.com/dakrfitch/p/8608949.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值