对于数据库的总结

关于数据库基础 

数据库:存储数据管理数据的仓库

类型:

1.关系型(有特定的组织方式,以行和列的形式存储数据):Mysql,SQLServer,Access,Oracle

2.非关系型:MongoDB ,Redis,Solr、ElasticSearch、Hive、HBase             

数据库三范式:

1)原子性:列或字段不能再分,要求属性具有原子性,不可再分离

2)唯一性:一张表只说一件事是对记录的唯一性约束,要求记录有唯一标识

3)直接性:数据不能存在传递关系,即每个属性都和主键有直接关系     

数据库储存引擎:

两个储存引擎

1.MyISMA储存引擎:

MySQL5.5版本之前的默认存储引擎,支持表级锁(表级锁是MySQL中锁定粒度最大的一种锁,表示对当前操作的整张表加锁);不支持事务,外键。

使用场景:对事务的完整性没有要求,或以select、insert为主的应用基本都可以选用MYISAM。在Web、数据仓库中应用广泛。

特点:1,不支持事务外键;

            2,2、每个myisam在磁盘上存储为3个文件,文件名和表名相同,扩展名分别是

 .frm    -------存储表定义      .MYD   --------MYData,存储数据     .MYI    --------MYIndex,存储索引

2.InnoDB储存引擎

主要特点:MySQL5.5版本之后的默认存储引擎;支持事务;

支持行级锁(行级锁是Mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁);

支持聚集索引方式存储数据。

MySQL的端口号是3306,SQLServer的端口号是1433,查了一下Oracle的端口号是1521

数据库主要特点:

(1)实现数据共享。
  数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。   
  (2)减少数据的冗余度。
  同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。
  (3)数据的独立性。
  数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。
  (4)数据实现集中控制。   
  文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。
  (5)数据一致性和可维护性,以确保数据的安全性和可靠性。   
  主要包括:①安全性控制:以防止数据丢失、错误更新和越权使用;
                   ②完整性控制:保证数据的正确性、有效性和相容性;
                   ③并发控制:使在同一时间周期内,允许对数据实现多路存取,
                      又能防止用户之间的不正常交互作用;
                   ④故障的发现和恢复:由数据库管理系统提供一套方法,
                      可及时发现故障和修复故障,从而防止数据被破坏
  (6)故障恢复。
  由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。

 

SQL语句:结构化查询语言

DML:数据库操作语言 :insert(插入),delete(删除), update(修改), select(检索)

DQL:数据库查询语言 :select 语言

DDL:数据库定义语言:create table

DCL :数据库控制语言:grant/deny/revoke-----只有管理员才有相应权限

SQL不区分大小写,Orcal全大写

数据库操作:

新增:    create  database 数据库名字 default character set utf8;

查询:show datdbases;

删除:drop databases;

表的常见操作:

使用数据库:use 数据库名

新建一个数据库:

create table 表名(字段名  字段类型(字段长度),字段名2  字段类型(字段长度))default character set utf8;

主键自增 主键名 int primary key auto_increment 

查询:show tabales;

修改指定表::修改   表    表名    添加   列/字段    列名   类型   长度

                         alter    table    a        add      column     age     int    (5);

删除指定表:删除    表     表名

                     drop   table     表名;

描述表:  描述    表名;

            desc     user;

关于数据的常见操作:

查询:查询     所有   来自  表名;

               select  *  from  user;             *  可以替换具体的字段名,

插入:insert   into  表名   values (1,2,3,4);post

修改:修改     表名     设置      字段名=新值;   put

            update  User    set       name = "詹三";

            update  User     set        age =5820;

   修改多个字段         update  User     set      name=“实施计划书”, age = 42;

删除数据:delete   from  User;

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ZCR5LiT5Lia5aSn56We5Y-R5bGV,size_11,color_FFFFFF,t_70,g_se,x_16        

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值