首页 > 代码库 > 数据库基础

数据库基础

数据库概念

数据库系统DBS

        

数据库管理系统DBMS

 

数据库

库文件

存储数据信息

服务

操作数据库文件的唯一途径SQL server(MSSQL server)

界面

显示

管理软件

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

数据库管理系统:Database Management  System简称DBMS     

数据库管理员(Database  Administration)简称DBA,功能是确保DBMS的正常高效运行。

数据库分体验版(一般只安装库文件和服务)和正式版(授权使用)

**商业化运营禁止运用盗版

在正式团队开发时,一般只安装界面,登陆到服务器共同操作数据库,这样可避免每人的数据库不同而无法组合

SQL语言类别

 SQL语句语言

DDL

数据定义语言

Create    drop  alter(修改)

DML

数据操作语言

C R U D(增删改查)

DCL

数据控制语言

Grant    back

SQL server2008模式:

2008 用的是:客户机/服务器(C/S)

还有另外一种模式:浏览器/服务器(B/S)

数据库文件:

***一个数据库最多可有32767个数据文件和32767个日志文件

名称

用途

 

扩展名

主文件

存储数据   启动信息

必须有且只能有一个

mdf

次要文件

存储主文件未存的数据

可有   可无 可多 可少

ndf

日志文件

记录操作信息

必有且至少有一个

ldf

一个文件或文件组只能用于一个数据库,不能用于多个数据库。

一个文件只能是某一个文件组的成员,不能是多个文件组的成员。

日志文件永远不能是任意文件组的成员。

数据信息和日志信息不能放在同一个文件或文件组中。

数据库系统模型

 数据库系统模型

关系

Relational  Model

层次

Hierarchical  Model

网状

Network    Model

层次----网络----到70年代出现 关系

对关系型数据库的操作:选择(where限制)        投影(列)           连接(行)

数据库系统服务器类型:

  1. 数据库引擎:核心服务,是一个复杂的系统,负责数据的存储,处理和安全
  2. Analysis  services:分析挖掘数据,支持本地多维数据集引擎,可使断开连接的客户端上的应用程序能够在本地浏览已存储的多维数据
  3. Reporting  services:报表服务器管理工具
  4. Intergration  services:负责数据的提取,转换和加载等操作,可以高效处理各种各样的数据源。例:Oracle,Excel,XML文档等
  5. SQL server compact edition:不是SQL server 2008 的组成部分,它是一种功能强大的轻型关系数据库引擎

数据库产品

公司

甲骨文

IBM

赛贝斯

微软

My SQL

产品

Oracle

DB2

Sybase Ase

Access

开源DB

Informix

Microsoft SQL server

Microsoft SQL server2008 代码名称为:katmai

数据库包括系统数据库(自带)和用户数据库(用户创建):

系统数据库

类型

用途

逻辑名称

物理名称

Master

存系统级信息,控制用户数据库及数据库管理系统的运行

 

Master.mdf

 

Mastlog.ldf

Tempdb

存所有临时信息,每次启动时重新创建为原始值

 

Tempdb.mdf

 

Templog.ldf

Model

模板数据库,新数据库的第一部分都是复制model中的内容创建

 

Model.mdf

 

Modellog.ldf

Msdb

 

用于数据库管理系统的代理程序,负责存储调度,报警,作业等信息

 

Msdbdata.mdf

 

Msdblog.ldf

单位换算

b位     B字节    KB    MB    GB    TB

1B=8b   1KB=1024B  B. KB. MB. GB. TB之间都是以二的十次方倍数递增

B字节是计算机运行的最基本单位。

笔记本分32位(4字节)和64位(8字节)系统,代表的是处理数据的能力。

图像分位图和矢量图:

位图由很多点拼起来,一位一个点,点有多少就代表像素有多大。

矢量图由线条组成,越放大,线条数越多,放大多少倍都不会出现点。(文件很大)

SQL server2008 的数据存储单位

  1. 页:最基本的单位。

8KB为一页,128页为1MB,开头是96B的标头,

表中每一行数据字节数不能超过8192-96 B (8192=1024*8)

  1. 区:管理空间的基本单位。

8个连接页为一个区,即64KB为一个区,16个区为1MB,

控制表和索引的存储  <64KB时存在混合盘,只有在64KB时才整存。

控制数据库的服务

运行cmd    控制板输入 net  start  MSSQLserver启动数据库

          控制板输入net   stop  MSSQLserver关闭数据库

          控制板输入net   pause  MSSQLserver暂停数据库

          控制板输入net   continue  MSSQLserver继续数据库

语句前边加——是注释

数据类型

整型:int 每个int类型的数据按4字节存储,其中1位表示整数值的正负号,其他31位表示整数值长度和大小

        Smallint每个smallint类型的数据按2字节存储,其中1位表示整数值的正负号,其他15位表示数值长度和大小

        Bigint 每个bigint类型的数据占8个字节

        Tinyint 0~255之间的所有的正整数 占一个字节

浮点型:real精确到第7位小数,占4字节

             Flout精确到第15 位小数,占8字节

                      Flout(n)如果n的小数少于7,默认为real类型

                      N在7到15 之间,默认为flout类型

         Decimal     decimal[p[s]]p表示可供存储值的总位数(不包括小数点)缺省值为18,s表示小数点后的位数,缺省值为0

          Numeric  暂无解释

逻辑型:bit 一个字节,值为0或1,如果输入其他值将默认为1,不能定义为null

字符型:char 定义为char[n]n表示所占的存储空间,范围1~8000

         Nchar定义为nchar[n] n范围1~4000,带n表示采用Unicode标准字符集

        Varchar定义为varchar[n]     n范围1~8000

        Nvarchar定义为nvarchar[n]   n范围1~4000

日期时间型:datetime   公元1753-1-1 0:0到公元9999-12-31  23:59::59

                  Smalldatetime  存储范围1900-1-1到2079-6-6

文本图形型:text用于存储大量文本数据

Ntext 和text计量单位不同

            Image用于存储大量的二进制数据,通常为图形等OLE和嵌入对象

用户自定义型:sysname

货币型 :   money 此类型数据是一个有四位小数的decimal值,占8个字节,在数据前加上货币符号来区分国家,否则默认为

                   Smallmoney 存储货币范围小

二进制型:binary 定义为binary(n)n表示数据的长度取值为1~8000,输入数据时必须在数据前加OX作为二进制标识

Varbinary  定义为varbinary(n)

约束:

实施数据已执行和完整性的方法

关系模型提供了三类完整性规则

一:实体完整性  主键约束(pk)

  1. 主键列不能有重复值,空值。空值表明存在不可识别的实体。
  2. 主键能惟一区分每一行的数据。
  3. 一个表里只能有一个主键,但主键可以由多列共同组合成为复合键。
  4. 主键会自动排序。不能把自动增长列设为主键,自增长列填错一次加一行。

二:参照(引用)完整性  两个表中的主关键字和外表的外关键字的数据一致

主表的主键约束从表的外键(ek)

三:用户定义完整性

唯一性约束 :不能重,可以为空,不自动排序(uk)

检查约束 :(check)

缺省约束 :

数据库原理:

范式:分1范式           

       2范式:部分依赖

       3范式:传递依赖

做编程要考虑的因素:

数据易读性

数据易维护,扩展

安全性

效率

数据库基础