数据库

什么是数据库:

数据库即数据的仓库,在数据库中提供了专门的管理系统,对数据库中的数据进行集中的控制和管理。

数据库分类:

大型数据库:Oracle DB2

中型数据库:Ms SQLserver

小型数据库:mySQL

 

查看所有数据库 : show databases;

进入数据库: use 库名;

数据库的注释: -- 空格


 

数据定义语言(DDL):创建、删除、修改数据库的内部数据结构

常用的DDL语法:

创建数据库 :create database 库名(随便取);

切换数据库 : use 库名;

创建表 :table

查看数库下面所有表 : show tables;

查看某张表的具体结构:describe 表名;

删除数据库 : drop database 库名;

删除表 : drop table 表名;

复制表 :create table 新表名 select*from 原来的表名;

添加列 : alter table 新表名 add 参数名字 类型;

删除列 :alter table 新表名 drop column 参数名字;

修改列的数据类型 :alter table 新表名 modify 参数名字 类型;

修改列的字段名 : alter table 原来新表名 change 参数名字 改的新的表名 类型;

创建索引(作用:提升查找速度):

create index 索引名_name_index on 表名( _name);

删除索引名:

alter table 表名 drop index on 索引名_name_index;

例:

-- 创建数据库
 create database j175;

-- 切换数据库
use j175;

-- 创建表 table

create  table    t_food(表名)(
      f_id  int, -- 编号
      f_name  varchar(20), -- 名称(长度最多20个字符)
      f_weight  float,  -- 重量
      f_price   decimal(5,2),-- 价格(规定的浮点型的长度,总长度5位,小数点后两位)
      f_publish  date, -- 日期
      f_type  char -- 类型 注:最后一次输入不能用“,”号 
      );
-- 查看数据库下面所有表
 show tables;

-- 查看某张表的具体结构
  describe t_food;

-- 删除数据库
  drop database j175;

-- 删除表
  drop table t_food;

-- 复制表
  create table t_food_bak select * from t_food;

-- 添加列
  alter table t_food_bak add f_exp varchar(10);

-- 删除列
  alter table t_food_bak drop column f_exp;

-- 修改列的数据类型(下面是把varchar转换成int数据类型)
  alter table t_food_bak modify f_exp int;

-- 修改列
  alter table t_food_bak change f_exp f_exp_new varchar(20);

-- 创建索引
  create index t_food_bak_name_index on t_food_bak(f_name);

-- 删除索引
  alter table  t_food_bak drop index t_food_bak_name_index;

 

数据在数据库中的存储形式:层次模型 、网状模型、关系模型、对象模型

层次模型如图:

 

 

 

网状模型如图:

 

 

 

关系模型如图:

 

 

 

 

 

 

 

 

 

 


 

关系型数据库中的三种关系(表关系):一对一关系,一对多关系、多对多关系

一对一关系如图:

 

 

 

 

 

 

 

 

 

一对多关系如图:

 

 

 

 

 

 

 

 

 

多对多关系如图:

 

 

 

 

 

 

 

 

 

 

 

 

什么是数据库管理系统:

关系型数据库只是一个保存数据的容器, 大多数数据库依靠一个称为 数据库管理系统(Database Management System,简称DBMS)的软件来管理数据库中数据。 管理关系型数据库的软件称为 关系型数据库管理系统(Relational Database Management System,简称RDBMS)。 数据库应用程序通过RDBMS与关系型数据库进行交互。

数据库管理系统分类:

1、本地数据库管理系统:

本地数据库管理系统又称桌面型数据库管理系统 ​ 在这种系统模式下,RDBMS与数据库应用程序运行在同一客户端的进程中,

例如微软的Access数据库,其模型如下图所示

 

 

 

2、数据库服务器管理系统:

在数据库服务器管理系统中,RDBMS和数据库应用程序运行在不同的进程,通常在不同的机器上。 ​ 一般数据库应用程序在客户端,而RDBMS则在专门的数据库服务器上。

其模型如下图所示

 

 

 

注意:在商业应用程序开发中,为安全性及性能考虑,通常采用数据库服务器管理系统。


结构化查询语言(Structured Query Language)-SQL

1、SQL是结构化查询语言(Structured Query Language)的英文缩写,发音为“see-kwell”。 是一种用于管理关系型数据库,并与数据库中的数据进行通讯的计算机语言。

2、SQL是一种用于数据库操作的语言,并且已经成为数据库管理的标准语言。

3、SQL与RDBMS(Relational Database Management System,关系型数据库管理系统的简称为RDBMS 管理关系型数据库的软件称为关系型数据库管理系统)协同工作, 来定义数据库的结构、存储数据、操纵数据、获取数据、控制对数据的访问以及确保数据的完整性。

4、SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础, 并且现在几乎所有的数据库均支持SQL。

SQL语言特点:

1.SQL集数据定义、数据操纵和数据控制于一体,可以完成数据库中的全部工作。

2.使用方式灵活:它具有两种使用方式,即可以直接以命令方式交互使用, 也可以嵌入使用,嵌入到C、C++、php、JAVA等主流编程语言中使用。

3.非过程化:使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。

4.语言简洁,语法简单,核心功能只用6个动词,语法接近英语口语。

SQL 语言组成(由四个部分):

1、数据定义语言(Data Definition Language-DDL)

数据定义语言用于定义数据库、定义数据表、定义视图与索引等。

2、数据操作语言(Data Manipulation Language-DML)

数据操作语言用于操作关系型数据库对象内部的数据,基本命令插入(Insert)、更新(Update)和删除(Delete)

3、数据查询语言(Data Query Language-DQL)

数据查询语言是现代关系型数据库用户最关注的部分,通过 Select 语句查询数据。

4、数据控制语言(Data Control Language-DCL)

数据控制语言分为事务控制语句、安全性控制语句等,用于控制对数据库里数据的访问,通常用于创建与用户访问相关的对象,以及控制用户的权限,如修改密码(Alter password)、权限(Grant)等等。

 

 

系入图:

posted @ 2019-12-23 23:03  星然  阅读(368)  评论(0编辑  收藏  举报