当前位置: 首页 > news >正文

广州网站建设方案维护手机网站建设效果

广州网站建设方案维护,手机网站建设效果,关于未备案网站,文山知名网站建设哪家好一#xff1a;数据库系统概论期末复习 1.1数据库系统基础 1.1.1数据库系统概述 数据#xff1a;描述事物的符号记录 数据库#xff1a;数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合 DBMS#xff1a;数据库管理系统 数据库系统#xff1a;数据库系统是… 一数据库系统概论期末复习 1.1数据库系统基础 1.1.1数据库系统概述 数据描述事物的符号记录 数据库数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合 DBMS数据库管理系统 数据库系统数据库系统是由数据库、数据库管理系统及其应用开发工具、应用程序和数据库管理员(DataBase Administrator,DBA)组成的存储、管理、处理和维护数据的系统 DBMS的体系结构3层 数据源(DATA SOURCE)远程数据库的别名 ODBC开发工具访问数据库统一的平台 JDBCJava数据库连接 1.1分解问题 一个低一级范式的关系模式通过模式分解(schema decomposition)可以转换为若干个高一级范式的关系模式的集合这种过程就叫规范化(normalization)  函数依赖 属性闭包 阿姆斯特朗公理 等价的最少的函数依赖集  第二范式(2NF) 若R∈1NF且每一个非主属性完全函数依赖于任何一个候选码则R∈2NF 例如SLC的码为(Sno,Cno)Sdept和Sloc依赖于Sno不依赖于Cno则不满足第二范式 第三范式(3NF) 若R∈2NF且非主属性不能有传递依赖 例如SLC的码为(Sno,Cno)Sno决定SdeptSdept决定Sloc存在Sno-Sdept-Sloc这样的传递依赖则不满足第三范式  BCNF(Boyce Codd Normal Form) 若R∈3NF且不能有主属性对码的部分依赖和传递依赖注意 若要求分解具有无损连接性那么模式分解一定能够达到4NF。 若要求分解保持函数依赖那么模式分解一定能够达到3NF但不一定能够达到BCNF。 若分解既具有无损连接性又保持函数依赖则模式分解一定能够达到3NF但不一定能够达到BCNF。 1.2动态维护日志文件的方法 周期性地执行如下操作建立检查点保存数据库状态。 具体步骤是 1将当前日志缓冲区中的所有日志记录写入磁盘的日志文件上 2在日志文件中写入一个检查点记录 3将当前数据缓冲区的所有数据记录写入磁盘的数据库中 4把检查点记录在日志文件中的地址写入一个重新开始文件 不同的封锁协议使事务达到的一致性级别不同 封锁协议级别越高一致性程度越高 1.3数据库系统 1.3.1数据库系统的组成 1、数据库 2、数据库管理系统 3、应用程序 4、数据库管理员 数据库系统是用来存储、管理、处理和维护数据的系统 1.3.2数据库阶段的特点 1、数据结构化 2、数据共享性高、冗余度低且易扩充 3、数据独立性高 数据独立性包括逻辑独立性和物理独立性 4、数据由数据库管理系统统一管理和控制DBMS的功能 1数据的安全性保护 2数据的完整性检查 3并发控制 4数据库恢复 1.3.4数据库系统的组成 1、硬件平台及数据库 2、软件 3、人员 人员包括 1、数据库管理员 2、系统分析员和数据库设计人员 1.3.5三级模式两级映像 外模式 也称子模式或者用户模式 一个数据库可以有多个外模式模式 也称逻辑模型 一个数据库只有一个模式内模式 也称为存储模式 一个数据库只有一个内模式 1.3.6数据独立性 包括物理独立性、逻辑独立性 两个独立性 逻辑独立性 当模式结构改变的时候只要修改外模式/模式映像即可保持逻辑独立性 物理独立性 当内模式结构改变的时候只需要修改模式/内模式映像就可以保持物理独立性 1.3.7重点关系模型 术语1、关系 一个关系通常来说是一张表2、元组 表中的一行3、属性 一列是一个属性 4、码 可以唯一确定一个元组。 比如学号 能确定学生 学号和课程 可以确定成绩5、域 是属性的取值范围 比如说考驾照的年龄设置为18-606、分量 元组中的一个属性值7、关系模式 是对关系的描述一般表示为关系名属性1属性2属性3 比如学生(学号姓名年龄) 关系模型的最基本要求关系必须规范化满足一定规范条件。 关系每一个分量必须是一个不可分的数据项不允许表中还有表 关系模型的完整性约束 1、实体完整性 主码唯一且非空2、参照完整性 外码要么为空要么在另一个表中的主码3、用户定义完整性 自定定义的比如年龄在12-30岁之间 二第一节绪论 2.1相关概念 ​ 1. Data数据是数据库中存储的基本对象是描述事物的符号记录。 数据种类文字图形图像音频视频 ​ 2. Database数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。 特点永久存储有组织可共享​ 3. DBMS数据库管理系统是位于用户与操作系统之间的一层数据管理软件用于科学地组织、存储和管理数据、高效地获取和维护数据。科学地组织和存储数据搞笑获取和维护数据​ 4. DBS数据库系统指在计算机系统中引入数据库后的系统一般由数据库、数据库管理系统、应用系统、数据库管理员DBA构成。​ 5. 数据模型是用来抽象、表示和处理现实世界中的数据和信息的工具是对现实世界的模拟是数据库系统的核心和基础其组成元素数据结构、数据操作和完整性约束。 ​ 6. 概念模型也称信息模型是按用户的观点来对数据和信息建模主要用于数据库设计。​ 7. 逻辑模型是按计算机系统的观点对数据建模用于DBMS实现。包括网状模型层次模型关系模型面向对象数据模型对象关系数据模型层次模型和网状模型统称为格式化模型​ 8. 物理模型是对数据最底层的抽象描述数据在系统内部的表示方式和存取方法在磁盘或磁带上的存储方式和存取方法是面向计算机系统的。 ​ 9. 实体和属性码客观存在并可相互区别的事物称为实体。实体所具有的某一特性称为属性唯一标识实体店属性集称为码。 实体型实体名及其属性集合来抽象和刻画同类实体称为实体型。 实体集同一类型实体集合称为实体集。​ 10.E-R图即实体-关系图用于描述现实世界的事物及其相互关系是数据库概念模型设计的主要工具。​ 11.关系模式从用户观点看关系模式是由一组关系组成每个关系的数据结构是一张规范化的二维表。 ​ 12.型/值型是对某一类数据的结构和属性的说明值是型的一个具体赋值是型的实例。 ​ 13.数据库模式是对数据库中全体数据的逻辑结构数据项的名字、类型、取值范围等和特征数据之间的联系以及数据有关的安全性、完整性要求的描述。 ​ 14.数据库的三级系统结构外模式、模式和内模式。 ​ 15.数据库内模式又称为存储模式是对数据库物理结构和存储方式的描述是数据在数据库内部的表示方式。一个数据库只有一个内模式。​ 16.数据库外模式又称为子模式或用户模式它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述是数据库用户的数据视图。通常是模式的子集。一个数据库可有多个外模式。​ 17.数据库的二级映像外模式/模式映像、模式/内模式映像。 2.2重点知识点 ​ 1. 数据库系统由数据库、数据库管理系统、应用系统和数据库管理员构成。 ​ 2. 数据模型的组成要素是数据结构、数据操作、完整性约束条件。 ​ 3. 实体型之间的联系分为一对一、一对多和多对多三种类型。 ​ 4. 常见的数据模型包括关系、层次、网状、面向对象、对象关系映射等几种。 ​ \5. 关系模型的完整性约束包括实体完整性、参照完整性和用户定义完整性。 \6. 阐述数据库三级模式、二级映象的含义及作用。 数据库三级模式反映的是数据的三个抽象层次 模式是对数据库中全体数据的逻辑结构和特征的描述。内模式又称为存储模式是对数据库物理结构和存储方式的描述。外模式又称为子模式或用户模式是对特定数据库用户相关的局部数据的逻辑结构和特征的描述。 ​ 数据库三级模式通过二级映象在 DBMS 内部实现这三个抽象层次的联系和转换。外模式面向应用程序 通过外模式/模式映象与逻辑模式建立联系 实现数据的逻辑独立性。 模式/内模式映象建立模式与内模式之间的一对一映射 实现数据的物理独立性。 三第二节 3.1关系 关系单一数据结构现实世界的实体以及实体之间的各种联系均用关系来表示 二维表逻辑结构从用户角度关系模型中数据的逻辑结构是一张二维表 建立在集合代数的基础之上。 1.域域是一种相同数据类型的值的集合。 如整数实数介于某个取值范围的整数指定长度的字符串集合 2.笛卡尔积重点 1 笛卡尔乘积选择和投影运算如下 给定一组域D1D2,…,Dn允许其中某些域是相同的。D1,D2,…,Dn的笛卡尔积为 注所有域的所有取值的一个组合 不能重复 例给出三种域 D1年龄集合{2003,2004} D2名字集合{小李小红} D3成绩集合{78,89} 则D1,D2,D3的笛卡尔集合为 D1×D2×D3{2003小李782003小李89)2003小红782003小红892004小李782004小李892004小红78,2004小红89} 2元祖笛卡尔积中每一个元素d1d2...,dn叫作一个n元祖 3分量笛卡尔积元素,,...,中每一个值叫作一个分量 4基数若i1,2...n为有限集其基数为i1,2...n则××...×的基数为·M为 注笛卡尔积表示方法笛卡尔积可表示为一张二维表表中每行对应一个元祖每列对应一个域。 3关系 1关系 D1×D2×...×Dn的子集叫作在域D1,D2,…,Dn上的关系表示为 R(D1,D2,…,Dn) R:关系名 n关系的目的或度 2单元关系与二元关系R(,,..., 当n1时称关系为单元或一元关系 当n2时称该关系为二元关系 3元祖关系中每个元素是关系中的元祖通常用t表示。 4关系表示关系也是一个二维表表的每行对应一个元祖表的每行对应一个域。 5属性a关系中不同列可以对应相同的域。 b为了区分必须对每列起一个名字称为属性。 cn目关系必有n个属性n个列 6码 候选码若关系中某一属性组的值能唯一标识一个元祖则称该属性为候选码。候选码只包含一个属性 全码关系模式的所有属性组是这个关系模式的候选码称为全码。 主码若一个关系有多个候选码则选定其中一个为主码。 主属性候选码的诸属性称为主属性不包含在任何候选码的属性称为非属性。 7三类关系 A基本关系实际存在的表是实际存储数据的逻辑表示。 B查询表查询结果对应的表 C视图表由基本表或其他视图表导出的表是虚表不对应实际数据。 8基本关系的性质 ①列是同质的 ②不同的列可以出自同一个域其中每一列称为一个域不同的属性要给予不同的属性名 ③列和行的顺序随机列和行的次序可以任意交换。 ④任意两个元组的候选码不能相同。 3.2关系模式 3.2.1关系模式含义 关系模式是对关系的描述元组构成集合属性构成属性来自的域属性与域之间的关系 完整约束条件 3.2.2定义关系模式 关系模式可以表示为RU,D,DOM,F R关系名 U组成该关系的属性名集合 DU中属性所来自的域 DOM属性向域的映象集合 F属性间数据的依赖关系的集合 RU或R(A1,A2,...,An 关系模式对关系的描述静态的稳定的 关系关系的模式在某一时刻的状态或内容动态的随时间不断变化。 3.2.3关系数据库 关系数据库在一个给定的应用领域中所有关系的集合构成一个关系数据库。 关系数据库的型与值 型关系数据模式是对关系数据库的描述 值关系模式在某一时刻对应的关系的集合通常称为关系数据库。 3.3关系操作 3.3.1基本的关系操作 常用的关系操作 查询的关系操作选择投影连接除并差交笛卡尔积 基本操作选择投影并差笛卡尔积 数据更新插入删除修改 关系操作特点集合操作方式操作的对象和结果都是集合一次一集合的方式 非关系数据模型数据操作方式一次一记录的方式。 3.5关系完整性  3.5.1实体完整性 若属性A是基本关系R的主属性则属性A不能取空值。 空值为“不知道”“不存在”“无意义”的值。 3.5.2参照完整性 1关系间的引用在关系模型中实体及实体间的联系都是用关系来描述的存在关系与关系间的引用。 2外码设F为基本关系R的一组属性但不是关系R的码如果 F与基本关系S和Ks相对应则称F为R的外码。 基本关系R称为参照关系 基本关系S称为被参照关系或目标关系 参照完整性规则若属性F是基本关系R的外码它与基本关系S的主码Ks相对应则对于R中每个元组在F上的值必须为 或者取空值F的每个属性值均为空值 或者等于S中某个元组的主码值。 3.5.3用户定义完整性 针对某一约束条件反映某一具体应用所涉及的数据必须满足语义要求。 3.6关系代数 3.6.1关系代数基础 关系代数是一种抽象的查询语言他对关系运算来表达查询。 关系代数 ①运算对象是关系 ②运算结果是关系 ③关系代数的运算符集合运算符和专门的关系运算符。 关系代数运算符 传统运算集合  1并 R和S:具有相同的目n即两个关系都有n个属性相应属性取自同一个域。 R∪S仍为n为目关系由属于R或属于S的元组组成R∪S{t|∈RVt∈S} 2差 R和S具有相同的目n相应的属性取自同一个域。 R-S仍为n目关系由属于R而不属于S的所有元组组成 3交 R和S具有相同的目n相应的属性取自同一个域 R∩S仍为n目关系由既属于R又属于S的元组组成。 (4)笛卡尔积 Rn目关系K1个元组 Sm目关系K2个元组 R×S 列nm列元组集合 ①元组的前n列是关系R的一个元组 ②后m列是关系S的一个元组 行K1×K2个元组 R×S{ } 四第三节关系数据库标准语言 4.1概述 ​ 1. SQL结构化查询语言的简称 是关系数据库的标准语言。SQL 是一种通用的、 功能极强的关系数据库语言 是对关系数据存取的标准接口 也是不同数据库系统之间互操作的基础。集数据查询、数据操作、数据定义、和数据控制功能于一体。 考试:SQL语言是非过程语言 SQL是关系数据库语言 SQL语言具有数据定义数据操纵数据控制的功能。 SQL语言具有两种使用方式分别称为交互式SQL和嵌入式SQL 建立数据库三级模式的功能由SQL语句的数据定义功能完成。 数据库中只存放视图的是定义 视图的优点简化查询语句。提高安全性。屏蔽真实表结构安全带来的影响。实现了逻辑数据独立性。 非关系数据模型操纵数据语言“面向过程” ​ 2. 数据定义数据定义功能包括模式定义、表定义、视图和索引的定义。 ​ 3. 嵌套查询指将一个查询块嵌套在另一个查询块的 WHERE 子句或 HAVING 短语的条件中的查询。 SQL相关知识 ​ 1SQL 数据定义语句的操作对象有模式、表、视图和索引。 ​ 2. SQL 数据定义语句的命令动词是CREATE、DROP 和 ALTER。 ​ 3. RDBMS(关系型数据库管理系统) 中索引一般采用 B树或 HASH 来实现。 ​ 4. 索引可以分为唯一索引、非唯一索引和聚簇索引三种类型。 SQL动词 SQL功能动词数据查询SELECT数据定义CREATE,DROP,ALTER数据操纵INSERT,UPDATE,DELETE数据控制GRANT,REVOKE SQL支持关系数据库的三级模式结构 4.2数据定义 4.2.1SQL数据定义语句 操作对象    操作创建         删除修改模式CREATE SCHEMADROP SCHEMA表CREATE TABLEDROP TABLEALTER TABLE视图CREATE VIEWDROP VIEW索引CREATE INDEXDROP INDEXALTER INDEX 4.2.1数据定义与删除 4.2.1.1定义模式定义模式实际上定义了一个命名空间这个空间可以定义该模式包含的数据库对象如基本表视图索引等。 在CREATE SCHEMA中可以接受CREATE TABLE,CREATE VIEW 和GRANT 字句。 CREATE SCHEMA模式名AUTHORIZATION用户名[表定义子句]|视图定义子句|授权定义子句] 例在用户ZHANG创建一个模式TEST,并在其中定义一个TAB1代码段如下 CREATE SCHEMA TEST AUTGHORIZATION ZHANG CREATE TABLE TAB1(COL1 SMALLINT,COL2 INT,COL3 CHAR(20),COL4 NUMERIC(10,3),COL5 DECIMAL(5,2)); 4.2.1.2删除模式 CASCADE(联级——删除模式的同时把该模式中所有数据库对象全部删除 RESTRICT(限制——如果该模式定义了下属的数据对象如表视图等则拒绝该删除语句执行。仅当该模式中没有任何下属的对象时才能执行。 DROP SCHEMA模式名CASCADE|RESTRICT 4.3基本表的定义删除与修改  4.3.1定义基本表 CREATEBTABLE表名     (列名数据类型[列级完整性约束条件]     [,列名数据类型[列级完整性约束条件]]     ...     [,表级完整性约束条件]); 表名所要定义的基本表的名字 列名组成该表的各个属性列 列级完整性约束条件涉及相应属性列的完整性约束条件 表级完整性约束条件设计一个或多个属性列的完整性约束条件 例建立“学生”表Student。学号是主码姓名取值唯一。则代码如下 CREATE BTABLE Student Sno CHAR(10PRIMARY KEY,Sname CHAR(20)UNIQUE,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20) ); 注执行CREATE TABLE语句后有关表的定义约束条件等翻译成内部表示存储在系统的数据字典在数据库中为基本表分配了预留了 存储时间。 4.3.2创建数据库 create database Student;      --创建数据库 use student;                          --使用数据库 drop database Student     --删除数据库 注两种注释方式1两个减号--注释单行。2/**/注行 不能在当前数据库删除当前数据库 4.3.3SQL常用数据类型 数据类型描述integersizeintsizesmallintsizetinyintsize仅容纳整数在括号内规定数字最大位数decimalsizednumericsized容纳带有小数的数字size规定数字最大位数d规定小数点右侧最大位数charsize容纳固定长度的字符串可容纳字母数字以及特殊符号在括号内规定字符串长度varcharsize容纳可变长度的字符串可容纳字母数字以及特殊字符在括号内规定字符串的最大长度datayyyymmdd容纳日期 ​ 4.3.4SQL 创建表语句的一般格式为 ​ CREATE TABLE 表名 ​ ( 列名 数据类型[ 列级完整性约束 ] ​ [列名 数据类型[ 列级完整性约束] ] … ​ [表级完整性约束 ] ) 其中数据类型可以是数据库系统支持的各种数据类型包括长度和精度。 列级完整性约束为针对单个列(本列)的完整性约束 包括 PRIMARY KEY、 REFERENCES表名(列名)、UNIQUE、NOT NULL 等。 表级完整性约束可以是基于表中多列的约束包括 PRIMARY KEY ( 列名列表) 、FOREIGN KEY REFERENCES 表名(列名) 等。 ​ 4.4索引的建立与删除 4.4.1SQL 创建索引语句的一般格式为 ​ CREATE [UNIQUE] [CLUSTER] INDEX 索引名 ​ ON 表名 (列名列表 ) 其中UNIQUE表示创建唯一索引缺省为非唯一索引 CLUSTER表示创建聚簇索引缺省为非聚簇索引 列名列表一个或逗号分隔的多个列名每个列名后可跟 ASC 或 DESC表示升/降序缺省为升序。多列时则按为多级排序。 4.4.2SQL修改索引的一般格式为 ALTER INDEX 旧索引名RENAME TO新索引名 4.4.3SQL删除索引一般格式为 DROP INDEX索引名 ​ 4.5SQL 数据查询 4.5.1SQL数据查询语句的一般格式为 ​ SELECT [ALLDISTINCT] 算术表达式列表 FROM 表名或视图名列表 ​ [ WHERE 条件表达式 1 ] ​ [ GROUP BY 属性列表 1 [ HAVING 条件表达式 2 ] ] ​ [ ORDER BY 属性列表 2 [ ASCDESC ] ] 其中 ALLDISTINCT 缺省为 ALL 即列出所有查询结果记录 包括重复记录。 DISTINCT则对重复记录只列出一条。 ​ 算术表达式列表一个或多个逗号分隔的算术表达式表达式由常量(包括数字和字符串)、列名、函数和算术运算符构成。每个表达式后还可跟别名。也可用 *代表查询表中的所有列。 表名或视图名列表 一个或多个逗号分隔的表或视图名。 表或视图名后可跟别名。 条件表达式 1包含关系或逻辑运算符的表达式代表查询条件。 条件表达式 2包含关系或逻辑运算符的表达式代表分组条件。 属性列表 1一个或逗号分隔的多个列名。 属性列表 2 一个或逗号分隔的多个列名 每个列名后可跟 ASC 或 DESC 表示升/降序缺省为升序。 4.5.2单表查询 4.5.2.1选择表中若干列 1.查询全部列: 选出所在属性列①在SELECT关键字后面列出所有列名②将目标列表达式指定为* 例查询全体学生详细信息 SELECT Sno,Sname,Ssex,Sdept FROM Student; 或 SELECT* FROM Student; 2查询经过计算的值 SELECT 子句的目标列表达式不仅可以为表中属性列也可以是表达式 例查找全体学生的成绩和姓名 SELECT SnameSgrade FROM  Student; 4.5.2.2选择表中若干元组 取消取值重复的行如果没有指定DISTINCT关键词则缺省为ALL 指定DISTINCT 关键词去掉表中重复的行 查询满足条件的元组 常用查询条件 查询条件谓词比较,,,,!,!,;NOT上述运算符确定范围BETWEEN AND,NOT BETWEEN AND确定集合IN,NOT,IN字符匹配LIKE,NOT LIKE空值IS NULL,IS NOT NULL多重条件AND,OR,NOT 4.5.2.3ORDER BY子句 可以按一个或多个属性排序 升序ASC;降序DESC;缺省值为升序 对于空值排序时显示次序由系统实现来决定 4.5.2.4聚集函数 统计元组个数COUNT(*) 统计一列中值的个数COUNT([DISTINC|ALL]列名) 计算一列值的总和此列必为数值型SUM([DISTINCT|ALL]列名) 计算一列值的平均值此列必为数值型AVG([DISTINCT|ALL]列名) 求一列中的最大值和最小值MAX([DISTINCT|ALL]列名) MIN([DISTINCT|ALL]列名) 4.5.2.5GROUP BY 子句 细化聚集函数的作用对象 如果未对查询结果分组聚集函数将作用于整个查询结果 对查询结果分组后聚集函数将分别作用于每个组 按指定的一列或多列分组值相当为一组。 4.5.3连接查询 连接查询同时涉及两个以上的表的查询。 连接条件或连接谓词用来连接两个表的条件其一般格式为 [表名1.]列名1比较运算符[表名2.]列名2 [表名1.]列名1BETWEEN[表名2.]列名2AND[表名2.]列名3 4.5.3.1等值和非等值连接查询 4.5.3.2自身连接 自身连接一个表与其自己进行连接。 需要给表起别名以示区别。 由于所有属性名为同名属性因此必须使用别名前缀。 4.5.3.3外连接 外连接操作以指定表连接为主体将主体表中不满足连接条件的元组一并输出。 左外连接列出左边关系中的所有元组。 右外连接列出右边关系中的所有元组。 4.5.3.4多表连接 多表连接两个以上的表进行连接。 4.5.4嵌套查询 4.5.4.1嵌套查询一个SELECT-FROM-WHERE语句为一个查询块。 将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短句的条件查询称为嵌套查询。 SELECT Sname /*外层查询/父查询*/ FROM Student WHERE Sno IN (SELECT Sno /*内层查询/子查询*/FROM SCWHERE Cno2); 上层查询块称为嵌套查询或父查询 下层查询块称为内层查询或子查询 SQL语言为多层嵌套查询一个字查询还可以嵌套为其他子查询。 子查询限制不能使用ORDER BY子句 不相关子查询子查询的查询条件不依赖于父查询。 相关子查询子查询的查询条件依赖于父查询。 4.5.5集合查询 4.5.5.1Group By子句 Group By操作含义是对SELECT-FROM-WHERE查询结果进行分组Group By指出分组属性。 注1.使用Group By子句时SELECT 列表中的非汇总列必须为Group By列表中的项。 2.分组时所有NULL值分为一组。 3.Group By列表中一般不允许出现复杂的表达式显示标题以及SELECT列表中的位置标号。 Having子句是对分组的约束。 Having条件对分组的约束HAVING中条件一般用于对一些集合函数比较如COUNT除此之外一般条件应该写在WHERE子句中。 Order By子句 如果指定了SELECT DISTINCT 那么ORDER By子句中项就必须出现在选择列表中。 注ORDER BY子句只能用于对最终查询结果的排序不能对中间结果排序。 任何情况下ORDER BY 子句只能出现在最后。 对集合操作结果排序时ORDER BY子句中用数字指定排序属性。 例: SELECT Sname,Sage,Sdept FROM Student UNION ALL SELECT A_Sname,H_Sage,H_Sdept FROM History_Student ORDER BY1; 集合操作 并操作UNION 并操作INTERSECT 差操作EXCEPT 形式 查询块; UNION [ALL] 查询块 参加UNION操作的各结果表列数 必须相同对应项的数据类型必须相同。 UNION将多个查询结果合并起来系统自动去掉重复元组。 UNION ALL将多个查询结果合并起来保留重复的元组。 4.5.6基于派生表的查询 子查询可以出现在WHERE子句中也可以出现在FROM子句中子查询生成的临时派生表成为主查询的查询对象。 派生表是一种从查询表达式派生出虚拟结果表的表达式与其他表一样出现在FROM子句中派生表存在于外部查询中。使用派生的一般形式如下 FROMSELECT*FROM TA WHERE...AS T 注如果子查询没有聚集函数派生表可以不指定属性列子查询SELECT子句后面的列名为其缺省属性。 4.5.7SELECT语句的一般形式 SELECT语句一般形式 SELECT[ALL|DISTINCT] 目标列表达式[别名][,目标列表达式[别名]] ... FROM表名或视图名[别名]           [,表名或视图名[别名]]...           |(SELECT语句)[AS]别名 [WHERE 条件表达式] [GROUP BY列名1[HAVING条件表达式]] [ORDER BY列名2[ASC|DESC]]; 目标列表达式格式 1* 2表名.* (3)COUNT([DISTINCT|ALL]*) (4)[表名.]属性列名表达式[.表名.]属性列名表达式]... 其中属性列名表达式可以是属性列作用于属性列的聚集函数和常量的任意算术运算组成的。 2.聚集函数一格式 3.WHERE子句的条件表达式                                                                                                                                                                                                                                                                                                                          4.6数据更新    4.6.1插入数据      两种插入方式  插入元组插入子查询结果。 4.6.1.1插入元组将新元组插入指定表中 语句格式 INSERT INTO表名[(属性列1[,属性列2...)] VALUES(常量1[常量2]...); INTO子句 1.指定要插入数据的表名及属性列 2.属性列的顺序可以与表义中的顺序不一致。 3.没有指定属性列表示要插入的是一条完整的元组且属性列属性与表定义的顺序一致。 4.指定部分属性列插入元组在其余属性列上取空值。 4.6.1.2插入子查询结果 语句格式 INSERT INTO表名[(属性列1[,属性列2...)] 子查询 4.6.2修改数据 修改指定表中满足WHERE子句条件元组。 SET子句给出表达式的值用于取代相应的属性列。 如果省略WHERE子句表示要修改表中所有元组。 语句格式 UPDATE表名 SET列名表达式[,列名表达式]... [WHERE条件]; 4.6.3删除数据 删除指定表中满足WHERE子句条件元组。 WHERE子句 指定要删除的元组 缺省表示要删除表中的全部元组表的定义仍在字典中。 语句格式 DELETE FROM表名 [WHERE条件]; 三种删除方式 1.删除某一个元组 2.删除多个元组的值 3.带子查询的删除语句 4.7空值处理  4.7.1空值的处理 空值就是“不知道”或不存在或“无意义”的值 一般有以下几种情况该属性可能有一个值氮目前不知道它的具体值。 该属性不应该有值。 由于某种原因不便于填写。 4.7.2空值的产生 空值是一个很特殊的值含有不确定性。对关系运算有特殊问题需要特殊处理。 4.7.3空值的判断 判断一个属性的值是否为空值用IS NULL或IS NOT NULL来表示 4.7.4空值约束条件 属性定义中 有NOT NULL约束条件不能取空值 加上UNIQUE限制的属性不能取空值。 码属性不能取空值。 4.7.5空值运算 空值与另一个值包括另一个空值的算术运算的结果为空值。 空值与另一个值包括另一个值的比较运算结果为UNKNOWN。 有UNKNOWN后传统二值TRUE,FALSE逻辑上扩展为三值逻辑。 逻辑运算符真值表 x     y x AND   y x   OR   yNOT   xT     TTTFT     UUTFT     FFTFU     TUTUU     UUUUU     FFUUF     TFTTF     UFUTF     FFFT 4.8视图 4.8.1定义视图 4.8.1.1建立视图 语句格式 CREATE VIEW 视图名[列名[,列名]...] AS子查询 [WITH CHECK OPTION] *WITH CHECK OPTION 对视图进行UPDATEINSERT和DELETE操作时保证更新插入或删除的行满足视图定义的谓词条件。 *子查询可以是任意SELECT语句是否可以含有ORDER BY 子句和DISTINCT短句则决定具体系统的实现。 *组成视图的属性列名全部省略·或全部否定。 *关系数据库管理系统执行CREATE VIEW语句时只是把视图定义存入数据字典并不执行其中SELECT语句。 *在对视图查询时按视图的定义从基本表中将数据查出。 *定义IS——Student视图加上WITH CHECK OPTION子句对视图进行插入修改和删除操作时RDBMS会自动加上SdeptIS’的条件。 4.8.1.2删除视图 语句格式定义 DROP VIEW 视图名[CASCADE] *该语句从数据字典中删除指定的视图定义。 *如果该视图导出其他视图 使用CASCADE级联删除语句把该视图和由他导出的所有视图一起删除。 *删除基表时由该基表导出的所有视图定义都必须显示使用DROP VIEW语句删除。 4.8.2查询视图 用户角度查询视图与查询基本表相同 关系数据库管理系统实现视图查询的方法。 视图消解法 进行有效性检查 转换成对基本表的查询 执行修正后查询 4.8.3更新视图 *允许对行列子集视图进行更新。 *对其他类型视图的更新不同系统有不同限制。 五第四节数据库的安全性 5.1安全性概述 计算机系统安全指为计算机系统建立和采取的各种安全保护措施以保护计算机系统中的硬件软件和数据防止因偶然或恶意原因使系统遭到破坏数据遭到更改或泄露。 计算机系统安全问题分类 技术安全防火墙防篡改 管理安全软硬件管理数据备份 政策法律类安全审查管理办法 TCSEC/TDI安全级别划分 安全级别定义A1验证设计B3安全域B2结构化保护B1标记安全保护C2受控存取保护C1自主安全性保护D最小保护 5.2 计算机系统安全性控制 5.2.1用户标识和鉴定 用户标识口令 系统提供最外层安全措施保护 系统提供方式让用户表示自己的名字和身份。 5.2.2身份鉴别 静态口令鉴别动态口令鉴别生物特征鉴别智能卡鉴别。 5.2.3存取控制 定义用户权限并将其登记到数据字典中。用户对某一数据对象操作称为权限。 合法权限检查按照安全规则进行权限检查。 自主存取控制DAC——GRANT和REVOKE 用户权限的两个因素数据库对象和操作类型 定义用户存取权限称为授权。 强制存取控制MAC 对象类型对象操作类型数据库模式CREATE SCHEMA基本表CREATE TABLE,ALTER TABLE模式视图CREATE VIEW索引CREATE INDEX数据基本表和视图 SELECT,INSERT,UPDATE,DELETE,REFERENCES, ALL PRIVILEGES 属性列 SELECT,INSERT,UPDATE,REFERENCES, ALL PRIVILEGES 5.2.4授权与回收 5.2.4.1GRANT语句授权 GRANT权限[,权限]...    (指定操作 [ON对象类型对象名]     指定对象 TO用户[,用户]...            指定用户 [WITH GRANT OPTION]; 5.2.4.2REVOKE语句 REVOKE权限[,权限]... [ON对象类型对象名] FROM用户[,用户]...; 5.2.5数据库角色 数据库角色被命名的一组或数据库操作相关的 权限。 角色是权限的集合可以为一组相同权限的用户创建一个角色简化授权过程。 一角色的创建 CREATEB ROLE角色名 二给角色授权 GRANT 权限[,权限]...  ON对象类型对象名 TO角色[,角色]... 三将一个角色授予其他的用户或角色。 GRANT 角色1[,角色2]...  TO 角色3[,用户1]... [WITH ADMIN OPTION] 四角色权限的收回 REVOKE权限[,权限]... ON对象类型对象名 FROM角色[,角色]  5.2.6强制存取控制MAC MAC是指系统为保证更高程度的安全性按照TDI/TCSEC标准中安全策略要求所采取的强制存取检查手段。 在MAC中DBMS所管理的全部实体被分为主体和客体两大类。 主体在系统中的活动实体包括DBMS所管理的实际用户也包括代表用户的各进程。 客体系统中的被动实体包括文件基表索引视图等。 DBMS为主体和客体的每个实例指派一个敏感度标记 绝密机密可信公开 主体的敏感度标记称为许可证级别。 客体的敏感度标记称为密级。 强制存取控制规则 1仅当主体的许可证级别大于或等于客体的密级时该主体才能读取相应的客体。 2仅当主体的许可证的密级时该主体才能写相应的客体。 视图机制 把要保密的数据对无权存取的用户隐藏起来从而自动地对数据提供一定程度的安全保护。 审计 审计日志将用户对数据库的所有操作记录在上面。 DBA利用审计日志找出非法存取数据的人时间和内容。 审计分为用户级审计和系统级审计。 数据加密 数据加密防止数据库数据在存储和传输过程中失密的有效手段。 加密方法替换方法置换方法混合方法。 其他安全性保护 推理控制隐蔽信道数据隐私。 六第五节数据库完整性 6.1实体完整性 6.1.1实体完整性定义 关系模型的实体完整性CREATE TABLE 中用PRIMARY KEY定义 单属性构成的码有两种说明定义为列级约束条件定义为表级约束条件。 对多个属性构成的码只有一种说明方法。 例将Student表中的Sno属性定义为码。 1在列级定义主码 CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY,Sname CHAR(20) NOT NULL,Ssex CHAR(2),Sage SMALLINT, ); (2)在表级中定义主码 CREATE TABLE Student (Sno CHAR(9),Sname CHAR(20) NOT NULL,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20),PRIMARY KEY(Sno), ); 实体完整性检查检查主码值是否唯一如果不唯一则拒绝或修改。 检查主码的各个属性是否为空只要有一个为空则拒绝插入或修改。  6.2参照完整性 6.2.1参照完整性定义 在CREATE TABLE 中用FOREIGN KEY 短语定义哪些列为外码 用REFERNCES短语指明这些外码参照哪些表的主码 FOREIGN KEY(属性名——定义 REFERENCES 被参照表名被参照表主码——引用 例关系SC中SnoCno 是主码。SnoCno分别参照Student表的主码和Course表的主码定义SC参照完整性。 CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(9) NOT NULL,Grade SMALLINT, PRIMARY KEY(Sno,Cno)2, FOREIGN KEY(Sno) REFERENCES Student(Sno), FOREIGN KEY(Cno) REFERENCES Course(Cno) ); 参照完整性检查与违约处理 一个参照完整性将两个表中的相应元组联系起来 对被参照表和参照表进行增删改操作时有可能破坏参照完整性必须进行检查。 参照完整性违约处理 1 拒绝NO ACTION        执行 2级联CASCADE操作 当删除或修改被参照表的元组造成了与参照表SC不一致则删除或修改参照表中的所有造成不一致元组。 3设置空值SET-NULL 当删除或修改被参照表的元组造成了与参照表SC不一致则将参照表中所有造成不一致的元组的对应属性设置为空值。 6.3用户定义完整性 用户定义完整性针对某一具体应用的数据必须满足的语义要求。 关系数据库管理系统提供了定义和检验用户定义完整性机制不必由应用程序承担。 6.3.1属性上的约束条件 CREATE TABLE 时定义属性上的约束条件 列值非空NOT NULL 列值唯一UNIQUE 检查列值是否满足一个条件表达式CHECK 例1在定义SC表时说明SnoCnoGrade属性不允许取空值  CREATE TABLE SC (Sno CHAR(9)NOT NULL,Cno CHAR(4)NOT NULL,Grade SMALLINT NOT NULL,PRIMARY KEY(Sno,Cno), ... ); 例2:建立部门表DEPT,要求部门名称Dname列值唯一部门编号Deptno为主码。 CREATE TABLE DEPT (Deptno NUMERIC(2),Dname CHAR(9) UNIQUE NOT NULL,/*要求Dname列值唯一并且不能取空值*/Location CHAR(10),PRIMARY KEY(Deptno) ); 例3利用CHECK指定列值满足的条件Student表中只允许取“男” 或“女” CREATE TABLE Student1 (Sno CHAR(9)PRIMARY KEY,Sname CHAR(8)NOT NULL,Ssex CHAR(2) CHECK(Ssex IN(男,女))/*性别属性Ssex只允许取男或女*/Sage SMALLINT,Sdept CHAR(20) ); 6.3.2元组上的约束条件 在CREATE TABLE 时可以用CHECK定义元组上的约束条件即元组级的限制。 同属性限制相比元组级的限制可以设置不同属性间的取值的相互约束条件。 元组上的约束条件检查和违约处理 插入元组或修改属性的值时关系数据库管理检查元组上的约束条件是否被满足如果不满足则操作拒绝执行。 例当学生的性别是男时其名字补位MISS打头 CREATE TABLE Student1 (Sno CHAR(9),Sname CHAR(8) NOT NULL,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20),PRIMARY KEY (Sno), ); 6.4完整性约束命令子句 6.4.1完整性约束命令子句 CONSTRAINT完整性约束条件名完整性约束条件 完整性约束条件:NOTNULL,UNIQUE,PRIMARY KEY短句FOREIGN KEY短语CHECK短句。 例建立学生登记表Student要求学号在0-100之间姓名不为空值年龄小于20性别只能是N男或女。 思路在Student表上建立5个约束条件包括主码约束StudentKey和C1,C2,C3,C4 CREATE TABLE Student (Sno NUMERIC(4)CONSTRAINT C1 CHECK(Sno BETWEEN 1 AND 100),Sname CHAR(20)CONSTRAINT C2 NOT NULL,Sage NUMERIC(3)CONSTRAINT C3 CHECK (Sage20),Ssex CHAR(2)CONSTRAINT C4 CHECK(Ssex IN(男,女)),CONSTRAINT StudentKey PRIMARY KEY(Sno) ); 6.4.2修改表中完整性限制 使用ALTER TABLE 语句修改表中的完整性限制 例修改表Student1中的约束条件要求学号修改为50-200之间年龄由20改为小于25 步骤:删除原来的约束条件再增加新的约束条件。 ALTER TABLE Student1 DROP CONSTRAINT C1; ALTER TABLE Student ADD CONSTRAINT C1 CHECK(Sno BETWEEN 50 AND 200), ALTER TABLE Student DROP CONSTRAINT C3; ALTER TABLE Student ADD CONSTRAINT C3CHECK(Sade25); 6.5断言 6.5.1创建断言的语句格式 CREATE ASSERTION断言名 CHECK子句 CREATE ASSERTION 指定约束 可以定义涉及多个表的或聚集操作的比较复杂的完整性约束 断言不为真值的操作会被拒绝执行 每个断言都被赋予一个名字CHECK子句中的约束条件与WHERE子句的条件表达式相似。 例限制每一门课程最多60名学生选修 CREATE ASSERTION ASSE_SC_CNUM1 CHECK (60ALL(SELECT COUNT(*)FROM SCGROUP BY Cno) ); 6.5.2删除断言的语句格式 DROP ASSERTION断言名; 6.6触发器Trigger 6.6.1定义触发器 触发器是用户定义在关系表上的一类由事件驱动的特殊过程。 触发器又叫事件-条件-动作规则。 事件发生时如果条件成立则执行规则中的动作否则不执行该动作。 语句格式 CREATE TRIGGER触发器名 {BEFORE|AFTER触发事件ON表名  REFERENCING NEW|OLD ROW AS变量 FOR EACH{ROW|STATEMENT} [WHERE触发条件]触发动作 CREATE TRIGGER触发器名 {BEFORE|AFTER触发事件ON表名 1表的拥有者才可以在表上创建触发器 2触发器名 触发器名可以包含模式名也可以不包含模式名同一模式下触发器名必须是唯一的触发器名和表名必须在同一模式下。 3表名 触发器只能定义在基本表上不能定义在视图上。 4触发事件 可以是INSERT DELETE或UPDATE也可以是几个事件的组合还可以是UPDATE OF触列...,进一步指明修改哪些列的激活触发器。 ALTER/BERORE是触发器的时机 AFTER表示执行之后激活触发器。 BEFORE表示执行之前激活触发器。 5触发器类型 行级触发器FOR EACH ROW 语句级触发器FOR EACH STATEMENT (6)触发条件 当触发条件为真时触发动作才执行否则触发动作体不执行。 如果省略WHERE触发条件则触发动作体在触发器激活后立即执行。 7触发体动作 触发动作可以是一个匿名的PL/SQL过程块也可以是对已创建存储过程的调用 行级触发器用户在过程体中使用NEW和OLD引用事件之后的新值事件之前的旧值。 语句级触发器不能在触发动作体中使用NEW或OLD进行引用。 如果触发动作体执行失败激活触发器的事件就会终止执行。 7.数据恢复技术 7.1 事务的概念及事务的4个特性及恢复技术能保证事务的哪些特性 ACID 原子性事务是数据库中的逻辑工作单元里面的操作要么全做要么不做 一致性事务执行结果必须是一个事务从一个一致性状态转到另一个一致性状态 隔离性一个事务的执行不能受其他事务的影响 持久性一旦一个事务完成提交了那么对数据库的改变是永久的保证了事务的原子性和隔离性 7.2故障种类(数据库的高可用性技术 备份、恢复、复制、分区、主库master、从库standbyclusterdata guard) 7.3事务内部的故障 系统故障 介质故障 计算机病毒 7.4. 恢复技术 恢复机制两个关键问题如何建立冗余数据以及如何利用这些冗余数据实施数据库恢复。建立数据库冗余数据最常用的技术是数据转储和登记日志文件 数据库相关问答题 为什么事务的非正常结束会影响数据库数据的正确性 如果数据库运行过程中出现故障导致事务非正常结束有些事务尚未完成就被中断那么就破坏了事务的原子性这些事务的一部分操作已经写入了数据库这时数据库处于不一致的状态例如银行转账。 登记日志文件时为什么必须先写日志文件后写数据库 因为这是两个不同的操作如果中间发送故障两个只能完成一个。如果先写了数据库操作而在日志中没有这个记录那么就无法恢复这个修改了。如果先写了日志但没有写入数据库。那么恢复时只要多执行一次UNDO操作并不会影响数据库操作。 针对不同的故障的恢复策略和方法 事务内部故障 反向扫描文件日志查找到该事务的更新操作 对该事务的更新操作执行逆操作直到读到改事务的开始标记 系统故障 正向扫描日志文件找出在故障前已经提交的事务队列和未完成队列 对未完成队列执行中各个事务执行UNDO操作 对已经提交的各个事务执行REDO操作 介质故障 装入最新的数据库后备副本使数据库恢复到最近一次转储时的一致性状态 装入转储结束时刻的日志文件副本 启动系统恢复命令由DBMS完成恢复功能 什么是检查点记录包括什么内容 检查点记录是一类新的日志记录。它的内容包括 建立检查点时刻所有正在执行的事务清单 这些事务的最近一个日志记录的地址 10.8. 具有检查点恢复技术有什么优点 节约时间利用日志技术进行数据库恢复时恢复子系统必须搜索整个日志这将耗费大量时间 需要REDO的操作实际上已经将它们的更新操作结果写到数据库了恢复子系统又重新执行了这些操作浪费了大量时间 使用检查点方法进行恢复的步骤 找到最后一个检查点记录在日志文件的地址由该地址在日志文件中找到最后一个检查点记录 由该检查点记录得到检查点建立时刻所有正在执行的事务清单建立两个事务队列UNDO和REDO 从检查点开始正向扫描日志文件根据提交与否选择重做还是撤销 对队列执行事务操作 什么是数据库镜像它有什么用途 自动将整个数据库或者关键数据复制到另一个磁盘上。每当主数据库更新时把更新后的数据复制过去即自动保证镜像数据和主数据的一致性。 用途 数据恢复 提升数据库利用率。例如被加了排他锁可以在镜像数据库上读。   为什么UNDO是反向扫描日志REDO是正向扫描日志 UNDO是恢复到第一个失败的事务就OK了正向做不到。REDO是恢复到最后一个成功的事务之后。 恢复系统是否可以保证事务的原子性和持续性 UNDO保证原子性REDO保证持续性 数据库中为什么要并发控制并发控制技术能保证事务的哪些特性 数据库时共享资源通常有多个事务同时执行。当多个事务同时并发地存取时就会产生同时读/写同一个数据。若对并发操作不加以控制就可能导致存取不正确的数据破坏事务的一致性。 并发控制保证了事务的一致性和隔离性 并发操作会产生哪几类数据的不一致用什么方法可以避免 丢失修改两个事务对同一个数据同时进行修改那么就会有一个事务的操作被另一个事务的修改覆盖掉。 不可重复读一个事务读了某一数据以后另一个事务对其进行了更新操作那么再次读的时候就会得到与上次不一样的数据。 读取脏数据一个事务修改了某一数据并把其写回磁盘另一个事务读取了这个数据以后之前那个事务因为某种原因撤销了。 避免不一致性的方法就是并发控制常用的并发控制有封锁法、时间戳法、乐观控制法、多版本并发控制法等 什么是封锁封锁类型有哪几种 封锁就是事务T对某一数据进行操作前先向系统发送请求对其加锁加锁以后事务就对这个数据有了一定的控制权在事务T释放锁之前其他事务不能对该数据进行更新或者读取 封锁类型有排它锁、共享锁 . 三级协议分别能解决哪些问题 加X锁直到事务结束再释放。解决了丢失修改问题。 在1基础上加S锁读完后可以释放解决了读取脏数据的问题。 在1基础上加S锁直到事务结束再释放解决了不可重复读问题 什么是活锁产生原因和解决办法 当一系列封锁操作无法按照其正确顺序执行时就可能导致事务无限等待某个封锁。 避免活锁的方法就是使用FCFS 什么是死锁解决死锁的办法举例说明什么是死锁。 防止死锁的方法有两种预防死锁、死锁诊断与解除 预防死锁有两种办法一次封锁法、顺序封锁法 死锁诊断与解决超时法、事务等待图法 解除法选择处理死锁代价最小的事务将其解除 Alter session kill ‘sessionid,pid ’; 什么样的并发调度是正确的调度 可串行化的并发调度是正确的调度。可串行化调度定义多个事务并发执行是正确的当且仅当其结果与按某一次序执行的串行执行的结果相同。 如何保证并发调度的正确性 冲突可串行化使用两段锁协议 NoSQL和New数据库 自1970年以来数据库技术发展到了第四代第一代是60~70年早期的层次和网状数据库系统第二代是70年代中期开始的关系数据库系统第三代是80年出现的对象数据库系统和以及90年出现的对关系模型进行扩展使关系数据库系统具有面向对象功能。 自2000年以来Web技术、社交网络、移动计算和物联网的进步导致全球范围应用程序生成的半结构化、非结构化数据呈现爆炸式增长势态此类应用程序产生了各种不同的需求包括水平可扩展能力、支撑大规模海量数据处理能力系统要具有高可用性和容错能力以应对硬件和软件故障并且可以通过利用额外资源响应客户端请求从而提高查询处理速率这就导致了第四代数据库技术NoSQL和NewSQL技术的出现。 NoSQL数据库的关键特征是(1)采用图形、树、键值、文档等表格模型以外的数据模型(2)数据库设计时没有固定的模式定义(3)提供对水平可扩展性的隐式支持(4)具有最终一致性而不是强一致性。NoSQL的另一个重要概念是CAP定理,它对分布式系统至关重要的属性提供了一些约束即一致性、可用性和分区容错性。CAP定理表明分布式系统在任何给定时间最多只能满足其中2个属性。 Json格式 NewSQL是最新一代的数据库系统它不仅提供NoSQL数据库系统具有的可扩展性和可用性还保留了传统关系数据库的ACID特性、关系数据模型和SQL查询语言。
http://www.dnsts.com.cn/news/274982.html

相关文章:

  • 小公司网站维护简易做网站
  • 龙岩做网站开发大概价格wordpress 加广告
  • 做好网站建设工作总结网站开发公司合作协议书
  • 电子商务网站建设与维护实训报告长春高端网站建设
  • 做网站需要模板吗电商一年可以赚多少钱
  • 深圳网站设计兴田德润放心黑龙江纪检监察网
  • 上海手机网站建设哪家专业中国建设银行用e路这么进网站
  • 婚庆网站制作公司购买的网站如何换背景
  • 做网站的企业是什么行业用自己网站做邮箱域名
  • 专门 做鞋子团购的网站有哪些中国城乡建设部网站房贴文件
  • 站长音效开封做网站
  • 巴中手机网站建设淘宝官网首页
  • 网站建设公司利润如何进行营销型企业网站的优化
  • 网站职业技能培训有哪些项目设计软件教程
  • 自己做网站页面wordpress支付平台
  • 网站与域名的区别石家庄的网站建设
  • 免费php企业网站管理系统工业互联网平台公司
  • 网站没有收录三合一模板网站
  • 在线建站平台免费建网站深圳注册公司网上申请入口
  • 网站开发的历史drupal wordpress性能
  • 能够做简历的网站怎样建设小游戏网站
  • 制作电子商务网站页面设计包装
  • 大型的平台类网站建设需要多少资金怎么样制作app的步骤
  • 房产网站建设公司wordpress首页文章数
  • 临沂企业网站开发官网用于网站建设的图片
  • 免费建网站哪家好咸宁网站设计公司
  • 注册公司在哪个网站注册网站建设接口开发
  • 做一个营销型的网站多少钱wordpress的数据库名
  • 白云区同和网站建设网店美工分为几个级别
  • 想建设个网站无锡网站搜索优化