java经典语句大全(必看!)_第1页
java经典语句大全(必看!)_第2页
java经典语句大全(必看!)_第3页
java经典语句大全(必看!)_第4页
java经典语句大全(必看!)_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 章 Error No text of specified style in document 数据库基础数据库基础 1 数据库数据库 1 1 1 1 1 1 数据库系统数据库系统 什么是什么是数据库系统数据库系统 数据库系统 DatabaseSystem DBS 是一个以数据库为核心的完整的运行实体 称为数据 库系统 主要包括 系统硬件平台系统硬件平台 系统软件平台系统软件平台 数据数据 数据库管理系统数据库管理系统 数据库管理员数据库管理员 1 1 2 1 1 2 数据库管理系统数据库管理系统 数据库管理系统数据库管理系统的概念 的概念 数据库管理系统 Database Management System DBMS 是数据库的机构 它是一种系统 软件 负责数据库中的数据组织 数据操纵 数据维护 控制及保护和数据服务等 数据库管理 系统是数据库系统的核心 它主要有如下几方面的具体功能 数据定义数据定义 数据操纵数据操纵 数据库运行管理数据库运行管理 数据组织 存储与管理数据组织 存储与管理 数据的建立与维护数据的建立与维护 1 1 3 1 1 3 数据库管理员数据库管理员 什么是什么是数据库管理员数据库管理员 由于数据库的共享性 因此对数据库的规划 设计 维护 监视等需要有专人管理 称 为数据库管理员 Database Administrator DBA DBA 的一般任务包括 安装 配置 升级和迁移安装 配置 升级和迁移 备份与恢复备份与恢复 数据库安全管理数据库安全管理 存储和容量规划存储和容量规划 性能监控和调整性能监控和调整 疑难解答疑难解答 第 1 章 Error No text of specified style in document 1 1 4 1 1 4 数据模型数据模型 数据模型分为两类 分属两个不同的层次 数据模型分为两类 分属两个不同的层次 1 概念模型概念模型 也称信息模型 它是按用户的观点来对数据和信息建模 用于数据库设计 2 逻辑模型和物理模型逻辑模型和物理模型 逻辑模型主要包括网状模型 层次模型 关系模型 面向对象模型等 按计算 机系统的观点对数据建模 用于 DBMS 实现 物理模型是对数据最底层的抽象 描述数据在系统内部的表示方式和存取方法 在磁盘或磁带上 的存储方式和存取方法 1 1 5 1 1 5 数据模型的概念数据模型的概念 逻辑逻辑数据模型数据模型的概念的概念 所谓数据库的逻辑数据模型又称为数据库的结构数据模型 或直接简称为数据模型 Data Model 它是定义数据如何输入和与输出的一种模型 其主要作用是为信息系统提供数据 的定义和格式 数据模型是数据库系统的核心和基础 逻辑数据模型的类型 逻辑数据模型的类型 层次层次 网状网状 关系关系 对象对象 1 1 6 1 1 6 行与列行与列 表 表 关系数据库的表采用二维表格来存储数据 是一种按行与列排列的具有相关信息的逻辑组 它类似于工作单表 记录 记录 表中的每一行被称为记录 字段 字段 数据表中的每一列称为一个字段 表是由其包含的各种字段定义的 每个字段描述了它 所含有的数据的意义 索引 索引 索引是表中单列或多列数据的排序列表 每个索引指向其相关的数据表的某一行 表间的关系 表间的关系 一个数据库往往都包含多个表 不同类别的数据存放在不同的表中 表间关系把 各个表联接起来 1 1 7 1 1 7 设计数据库的步骤设计数据库的步骤 在需求分析阶段 在需求分析阶段 设计数据库的一般步骤设计数据库的一般步骤为 为 收集信息收集信息 标识对象标识对象 标识每个对象的属性标识每个对象的属性 标识对象之间的关系标识对象之间的关系 在概要设计阶段和详细设计阶段 设计数据库的步骤为 在概要设计阶段和详细设计阶段 设计数据库的步骤为 绘制绘制 E R 图图 将将 E R 图转换为表格图转换为表格 应用三大范式规范化表格应用三大范式规范化表格 第 1 章 Error No text of specified style in document 1 1 8 1 1 8 范式范式 为了设计结构良好的数据库 需要遵守一些专门的规则 称为数据库的设计范式为了设计结构良好的数据库 需要遵守一些专门的规则 称为数据库的设计范式 第一范式 第一范式 1NF 的目标 确保每列的原子性 的目标 确保每列的原子性 第二范式 第二范式 2NF 的目标 确保表中的每列 都和主键相关 的目标 确保表中的每列 都和主键相关 第三范式 第三范式 3NF 的目标 确保每列都和主键列直接相关 而不是间接相关 的目标 确保每列都和主键列直接相关 而不是间接相关 1 2 1 2 数据库文件数据库文件 1 2 1 数据库文件数据库文件 数据库文件数据库文件 主数据文件 主数据文件 主数据文件包含数据库的启动信息 并指向数据库中的其他文件 用户数据和对 象可存储在此文件中 也可以存储在次数据文件中 每个数据库有一个主数据文件 主数据文 件的建议文件扩展名是 mdf 次数据文件 次数据文件 次数据文件是可选的 由用户定义并存储用户数据 通过将每个文件放在不同的 磁盘驱动器上 次数据文件可用于将数据分散到多个磁盘上 另外 如果数据库超过了单个 Windows 文件的最大大小 可以使用次数据文件 这样数据库就能继续增长 次数据文件的建 议文件扩展名是 ndf 日志文件日志文件 事务日志文件保存用于恢复数据库的日志信息 每个数据库必须至少有一个日志文 件 事务日志文件的建议文件扩展名是 ldf 1 2 2 文件组文件组 每个数据库有一个主文件组 此文件组包含主数据文件和未放入其他文件组的所有次数据文件 可以 创建用户定义的文件组 用于将数据文件集合起来 以便于管理 数据分配和放置 例如 可以分别 在三个磁盘驱动器上创建三个文件 Data1 ndf Data2 ndf 和 Data3 ndf 然后将它们分配给文件组 fgroup1 然后 可以明确地在文件组 fgroup1 上创建一个表 对表中数据的查询将分散到三个磁盘上 从而提高了性能 通过使用在 RAID 独立磁盘冗余阵列 条带集上创建的单个文件也能获得同样的性 能提高 但是 文件和文件组使您能够轻松地在新磁盘上添加新文件 1 2 3 默认文件组默认文件组 如果在数据库中创建对象时没有指定对象所属的文件组 对象将被分配给默认文件组 不管何 时 只能将一个文件组指定为默认文件组 默认文件组中的文件必须足够大 能够容纳未分配 给其他文件组的所有新对象 PRIMARY 文件组是默认文件组 除非使用 ALTER DATABASE 语句进行了更改 但系统对象和 表仍然分配给 PRIMARY 文件组 而不是新的默认文件组 1 2 4 创建用户数据库创建用户数据库 1 在创建数据库之前 应注意下列事项 在创建数据库之前 应注意下列事项 要创建数据库 必须拥有要创建数据库 必须拥有 CREATE DATABASE CREATE ANY DATABASE 或或 ALTER ANY DATABASE 权限 权限 创建数据库的用户将成为该数据库的所有者 创建数据库的用户将成为该数据库的所有者 对于一个对于一个 SQL Server 实例 最多可以创建实例 最多可以创建 32 767 个数据库 个数据库 数据库名称必须遵循为标识符指定的规则 数据库名称必须遵循为标识符指定的规则 model 数据库中的所有用户定义对象都将复制到所有新创建的数据库中 可以向数据库中的所有用户定义对象都将复制到所有新创建的数据库中 可以向 model 数据库数据库 中添加任何对象 例如表 视图 存储过程和数据类型 中添加任何对象 例如表 视图 存储过程和数据类型 以将这些对象包含到所有新创建的数 以将这些对象包含到所有新创建的数 第 1 章 Error No text of specified style in document 据库中 据库中 1 2 5 创建用户数据库创建用户数据库 2 SSMS 创建数据库创建数据库 14 步步 在对象资源管理器中 连接到在对象资源管理器中 连接到 SQL Server 数据库引擎实例 再展开该实例 数据库引擎实例 再展开该实例 右键单击右键单击 数据库数据库 然后单击 然后单击 新建数据库新建数据库 在在 新建数据库新建数据库 中 输入数据库名称 中 输入数据库名称 若要通过接受所有默认值创建数据库 请单击若要通过接受所有默认值创建数据库 请单击 确定确定 否则 请继续后面的可选步骤 否则 请继续后面的可选步骤 若要更改所有者名称 请单击若要更改所有者名称 请单击 选择其他所有者 选择其他所有者 若要更改主数据文件和事务日志文件的默认值 请在若要更改主数据文件和事务日志文件的默认值 请在 数据库文件数据库文件 网格中单击相应的单元并网格中单击相应的单元并 输入新值 输入新值 若要更改数据库的排序规则 请选择若要更改数据库的排序规则 请选择 选项选项 页 然后从列表中选择一个排序规则 页 然后从列表中选择一个排序规则 若要更改恢复模式 请选择若要更改恢复模式 请选择 选项选项 页 然后从列表中选择一个恢复模式 页 然后从列表中选择一个恢复模式 若要更改数据库选项 请选择若要更改数据库选项 请选择 选项选项 页 然后修改数据库选项 页 然后修改数据库选项 若要添加新文件组 请单击若要添加新文件组 请单击 文件组文件组 页 单击页 单击 添加添加 然后输入文件组的值 然后输入文件组的值 若要将扩展属性添加到数据库中 请选择若要将扩展属性添加到数据库中 请选择 扩展属性扩展属性 页 页 在在 名称名称 列中 输入扩展属性的名称 列中 输入扩展属性的名称 在在 值值 列中 输入扩展属性的文本 例如 输入描述数据库的一个或多个语句 列中 输入扩展属性的文本 例如 输入描述数据库的一个或多个语句 若要创建数据库 请单击若要创建数据库 请单击 确定确定 1 2 6 创建用户数据库创建用户数据库 3 T SQL 创建数据库创建数据库 未指定文件的数据库未指定文件的数据库 USE master 切换到 master 数据库 GO CREATE DATABASE student 创建 student 数据库 GO 两文件的默认路径 两文件的默认路径 C Program Files Microsoft SQL Server MSSQL10 MSSQLSERVER MSSQL DATA student dat mdf C Program Files Microsoft SQL Server MSSQL10 MSSQLSERVER MSSQL DATA student log ldf 1 2 7 扩展数据库扩展数据库 扩展扩展数据库数据库 在对象资源管理器中 连接到 SQL Server 数据库引擎实例 然后展开该实例 展开 数据库 右键单击要扩展的数据库 再单击 属性 在 数据库属性 中 选择 文件 页 若要增加现有文件的大小 请增加文件的 初始大小 MB 列中的值 数据库的大小必须至少 增加 1 MB 若要通过添加新文件增加数据库的大小 请单击 添加 然后输入新文件的值 单击 确定 1 2 8 收缩数据库收缩数据库 在对象资源管理器中 连接到在对象资源管理器中 连接到 SQL Server 数据库引擎实例 然后展开该实例 数据库引擎实例 然后展开该实例 展开展开 数据库数据库 再右键单击要收缩的数据库 再右键单击要收缩的数据库 第 1 章 Error No text of specified style in document 指向指向 任务任务 指向 指向 收缩收缩 然后单击 然后单击 数据库数据库 根据需要 可以选中根据需要 可以选中 在释放未使用的空间前重新组织文件在释放未使用的空间前重新组织文件 复选框 如果选中该复选框 必复选框 如果选中该复选框 必 须为须为 收缩后文件中的最大可用空间收缩后文件中的最大可用空间 指定值 指定值 选中该选项的作用与执行选中该选项的作用与执行 DBCC SHRINKDATABASE 时指定时指定 target percent 值相同 清除该选项值相同 清除该选项 的作用与使用的作用与使用 TRUNCATEONLY 选项执行选项执行 DBCC SHRINKDATABASE 相同 相同 TRUNCATEONLY 将文将文 件收缩到最后分配的区 这将减小文件的大小 但不移动任何数据 默认情况下 该选项为清件收缩到最后分配的区 这将减小文件的大小 但不移动任何数据 默认情况下 该选项为清 除状态 除状态 输入收缩数据库后数据库文件中剩下的最大可用空间百分比 允许的值介于输入收缩数据库后数据库文件中剩下的最大可用空间百分比 允许的值介于 0 和和 99 之间 该之间 该 选项仅在选中选项仅在选中 在释放未使用的空间前重新组织文件在释放未使用的空间前重新组织文件 时可用 时可用 单击单击 确定确定 1 2 9 添加数据文件和事务日志文件添加数据文件和事务日志文件 在对象资源管理器中 连接到在对象资源管理器中 连接到 SQL Server 数据库引擎实例 再展开该实例 数据库引擎实例 再展开该实例 展开展开 数据库数据库 右键单击要从中添加文件的数据库 然后单击 右键单击要从中添加文件的数据库 然后单击 属性属性 在在 数据库属性数据库属性 对话框中 选择对话框中 选择 文件文件 页 页 若要添加数据或事务日志文件 请单击若要添加数据或事务日志文件 请单击 添加添加 在在 数据库文件数据库文件 网格中 输入文件的逻辑名称 该文件名在数据库中必须唯一 网格中 输入文件的逻辑名称 该文件名在数据库中必须唯一 选择文件类型 数据或日志 选择文件类型 数据或日志 对于数据文件 从列表中选择文件应属于的文件组 或选择对于数据文件 从列表中选择文件应属于的文件组 或选择 以创建新的以创建新的 文件组 事务日志不能放在文件组中 文件组 事务日志不能放在文件组中 指定文件的初始大小 根据数据库中您希望的最大数据量 使数据文件尽可能大 指定文件的初始大小 根据数据库中您希望的最大数据量 使数据文件尽可能大 若要指定文件的增长方式 请在若要指定文件的增长方式 请在 自动增长自动增长 列中单击列中单击 从下列选项中进行选择 从下列选项中进行选择 A 若要允许当前选中的文件根据数据空间量的需求增加而增长 请选中 启用自动增长 复选框 然后从下列选项中进行选择 B 若要指定文件按固定增量增长 请选择 按 MB 并指定一个值 C 若要指定文件按当前文件大小的百分比增长 请选择 按百分比 并指定一个值 若要指定最大文件大小限制 请从下列选项中进行选择 若要指定最大文件大小限制 请从下列选项中进行选择 A 若要指定文件能够增长到的最大大小 请选择 限制文件增长 MB 并指定一个值 B 若要允许文件根据需要增长 请选择 不限制文件增长 C 若要防止文件增长 请清除 启用自动增长 复选框 文件大小不会增长到超过 初始 大小 MB 列中指定的值 指定文件位置的路径 指定的路径必须存在才能添加文件 指定文件位置的路径 指定的路径必须存在才能添加文件 单击单击 确定确定 1 2 10 删除数据文件和事务日志文件删除数据文件和事务日志文件 在对象资源管理器中 连接到 SQL Server 数据库引擎实例 再展开该实例 展开 数据库 右键单击要从其中删除文件的数据库 再单击 属性 选择 文件 页 在 数据库文件 网格中 选择要删除的文件 再单击 删除 单击 确定 1 2 11 设置数据库选项设置数据库选项 在对象资源管理器中 连接到数据库引擎实例 扩展该服务器 然后扩展在对象资源管理器中 连接到数据库引擎实例 扩展该服务器 然后扩展 数据库数据库 右键单击 右键单击 某个数据库 再单击某个数据库 再单击 属性属性 第 1 章 Error No text of specified style in document 在在 数据库属性数据库属性 对话框中 单击对话框中 单击 选项选项 访问大多数配置设置 文件和文件组配置 镜像和访问大多数配置设置 文件和文件组配置 镜像和 日志传送都在各自相应的页上 日志传送都在各自相应的页上 1 2 12 SQL Server Management Studio 分离数据库分离数据库 1 在在 SQL Server Management Studio 对象资源管理器中 连接到对象资源管理器中 连接到 SQL Server 数据库引擎数据库引擎 的实例上 再展开该实例 的实例上 再展开该实例 2 展开展开 数据库数据库 并选择要分离的用户数据库的名称 并选择要分离的用户数据库的名称 3 分离数据库需要对数据库具有独占访问权限 如果数据库正在使用 则限制为只允许分离数据库需要对数据库具有独占访问权限 如果数据库正在使用 则限制为只允许 单个用户进行访问 单个用户进行访问 A 右键单击数据库名称并指向 属性 B 在 选择页 窗格中 选择 选项 C 在 其他选项 窗格中 向下滚动到 状态 选项 D 选择 限制访问 选项 然后在其下拉列表中 选择 单用户 E 单击 确定 1 将出现一个消息框 通知您此操作将关闭所有到数据库的连接 若要继续 请单击将出现一个消息框 通知您此操作将关闭所有到数据库的连接 若要继续 请单击 确定确定 2 右键单击数据库名称 指向右键单击数据库名称 指向 任务任务 再单击 再单击 分离分离 将出现 将出现 分离数据库分离数据库 对话框 对话框 3 要分离的数据库要分离的数据库 网格在网格在 数据库名称数据库名称 列中显示所选数据库的名称 验证这是否为列中显示所选数据库的名称 验证这是否为 要分离的数据库 要分离的数据库 4 默认情况下 分离操作将在分离数据库时保留过期的优化统计信息 若要更新现有的默认情况下 分离操作将在分离数据库时保留过期的优化统计信息 若要更新现有的 优化统计信息 请选中优化统计信息 请选中 更新统计信息更新统计信息 复选框 复选框 5 默认情况下 分离操作保留所有与数据库关联的全文目录 若要删除全文目录 请清默认情况下 分离操作保留所有与数据库关联的全文目录 若要删除全文目录 请清 除除 保留全文目录保留全文目录 复选框复选框 6 状态状态 列将显示当前数据库状态 列将显示当前数据库状态 就绪就绪 或者或者 未就绪未就绪 7 如果状态是如果状态是 未就绪未就绪 则 则 消息消息 列将显示有关数据库的超链接信息 当数据库涉及列将显示有关数据库的超链接信息 当数据库涉及 复制时 复制时 消息消息 列将显示列将显示 Database replicated 数据库有一个或多个活动连接时 数据库有一个或多个活动连接时 消消 息息 列将显示列将显示 个活动连接 例如 个活动连接 例如 1 个活动连接 在可以分离数据列个活动连接 在可以分离数据列 之前 必须选中之前 必须选中 删除连接删除连接 复选框来断开与所有活动连接的连接 复选框来断开与所有活动连接的连接 8 若要获取有关消息的详细信息 请单击超链接 若要获取有关消息的详细信息 请单击超链接 9 分离数据库准备就绪后 请单击分离数据库准备就绪后 请单击 确定确定 1 2 13 SQL Server Management Studio 附加数据库附加数据库 在 SQL Server Management Studio 对象资源管理器中 连接到 Microsoft SQL Server 数据库引擎 实例 然后展开该实例 右键单击 数据库 然后单击 附加 在 附加数据库 对话框中 若要指定要附加的数据库 请单击 添加 然后在 定位数据库 文件 对话框中选择数据库所在的磁盘驱动器并展开目录树 以查找并选择数据库的 mdf 文 件 例如 E DATA 酒店住房管理系统 mdf 或者 若要为附加的数据库指定不同的名称 请在 附加数据库 对话框的 附加为 列中输 入名称 或者 通过在 所有者 列中选择其他项来更改数据库的所有者 准备好附加数据库后 单击 确定 第 1 章 Error No text of specified style in document 1 2 14 修改数据库修改数据库 Transact SQL 分离数据库分离数据库 EXEC sp detach db 网店购物系统网店购物系统 true Transact SQL 附加数据库附加数据库 EXEC sp attach db dbname 网店购物系统网店购物系统 filename1 D DATA 网店购物系统网店购物系统 mdf filename2 D DATA 网店购物系统网店购物系统 log ldf 移动数据库文件移动数据库文件 只有在分离数据库后才可以移动数据库的有关所有文件 只有在分离数据库后才可以移动数据库的有关所有文件 1 2 15 SQL Server Management Studio 重命名数据库重命名数据库 SQL Server Management Studio 重命名数据库重命名数据库 在对象资源管理器中 连接到 SQL Server 数据库引擎实例 然后展开该实例 确保没有任何用户正在使用数据库 然后将数据库设置为单用户模式 展开 数据库 右键单击要重命名的数据库 再单击 重命名 输入新的数据库名称 再单击 确定 T SQL 重命名数据库重命名数据库 USE master GO ALTER DATABASE mytest Modify Name youtest GO 1 2 16 删除用户数据库删除用户数据库 SQL Server Management Studio 删除用户数据库删除用户数据库 在对象资源管理器中 连接到 SQL Server 数据库引擎实例 然后展开该实例 展开 数据库 右键单击要删除的数据库 再单击 删除 确认选择了正确的数据库 再单击 确定 T SQL 删除用户数据库删除用户数据库 DROP DATABASE your Database 1 3 1 3 数据类型数据类型 1 3 1 1 3 1 整型数据类型整型数据类型 整型数据类型是最常用的数据类型之一 它主要用来存储数值 可以直接进行数据运算 而不 必使用函数转换 int integer int 或 integer 数据类型可以存储从 231 2 147 483 648 到 231 1 2 147 483 647 范围之间的所有正负整数 Smallint 可以存储从 215 32 768 到 215 1 范围之间的所有正负整数 Tinyint 可以存储从 0 到 255 范围之间的所有正整数 第 1 章 Error No text of specified style in document 1 3 2 1 3 2 浮点数据类型浮点数据类型 浮点数据类型用于存储十进制小数 浮点数值的数据在 SQL Server 中采用只入不舍的方式进行存 储 Real 以存储正的或者负的十进制数值 最大可以有 7 位精确位数 Float 可以精确到第 15 位小数 其范围从 1 79E 308 到 1 79E 308 Decimal 和 numeric Decimal 数据类型和 numeric 数据类型完全相同 它们可以提供小数所需要的实际存储空间 但也有一定的限制 可以用 2 到 17 个字节来存储从 1038 1 到 1038 1 之间的数值 1 3 3 1 3 3 字符数据类型字符数据类型 字符数据类型可以用来存储各种字母 数字符号和特殊符号 char 其定义形式为 char n 每个字符和符号占用一个字节的存储空间 varchar 其定义形式为 varchar n 用 char 数据类型可以存储长达 n 个字符的可变长度字符串 nchar 其定义形式为 nchar n 每个汉字占用一个字节的存储空间 nvarchar 其定义形式为 nvarchar n 可以存储长达 n 个汉字的可变长度字符串 1 3 4 1 3 4 varcharvarchar 与与 charchar 的区别的区别 char 对英文 ASCII 字符占用 1 个字节 对一个汉字占用 2 个字节 varchar 的类型不以空格填满 比如 varchar 100 如果它的值只是 qian 则它的值就是 qian char 的类型以空格填满 比如 char 100 它的值是 qian 而实际上它在数据库中是 qian qian 后共有 96 个空格 就是把它填满为 100 个字节 由于 char 是以固定长度的 所以它的速度会比 varchar 快很多 但程序处理起来要麻烦一点 要 用 trim 之类的函数把两边的空格去掉 1 3 5 1 3 5 日期和时间数据类型日期和时间数据类型 日期类型用于表示某天的日期和时间的数据类型 它包括 datetime 和 smalldatetime datetime 用于存储日期和时间的结合体 它可以存储从公元 1753 年 1 月 1 日零时起到公元 9999 年 12 月 31 日 23 时 59 分 59 秒之间的所有日期和时间 smalldatetime 与 datetime 数据类型类似 但其日期时间范围较小 它存储从 1900 年 1 月 1 日到 2079 年 6 月 6 日内的日期 1 3 6 1 3 6 文本和图形数据类型文本和图形数据类型 文本与图形数据类型主要用来存储较大范围的字符类型或非字符类型数值 text 用于存储大量文本数据 其容量理论上为 1 到 2 31 1 2147483647 个字节 但实际应用时 要根据硬盘的存储空间而定 ntext 与 text 数据类型类似 存储在其中的数据通常是直接能输出到显示设备上的字符 显示设备 可以是显示器 窗口或者打印机 image 第 1 章 Error No text of specified style in document 用于存储照片 目录图片或者图画 其理论容量为 2 31 1 2147483647 个字节 1 4 1 4 T SQLT SQL 表案例表案例 1 4 1 1 4 1 T SQLT SQL 创建表案例创建表案例 use Student 选择当前数据库选择当前数据库 CREATE TABLE StuInfo 创建学生信息表创建学生信息表 StuNo varchar 12 primary key StuName varchar 12 not null StuAge int not null check StuAge 0 and StuAge 0 and Written 0 and Lab 0 and Written 0 and Lab 18 and StuAge 大于 大于 大于或等于 大于或等于 小于或等于 小于或等于 不等于 不等于 不等于 不等于 1 5 6 1 5 6 逻辑运算符逻辑运算符 逻辑运算符对某个条件进行测试 以获得其真实情况 AND 如果两个布尔表达式都为如果两个布尔表达式都为 TRUE 那么就为 那么就为 TRUE NOT 对任何其它布尔运算符的值取反 对任何其它布尔运算符的值取反 OR 如果两个布尔表达式中的一个为如果两个布尔表达式中的一个为 TRUE 那么就为 那么就为 TRUE 1 5 7 1 5 7 匹配运算符匹配运算符 用来在对字符串进行匹配时使用的匹配模式 BETWEEN 如果操作数在某个范围之内 那么就为如果操作数在某个范围之内 那么就为 TRUE IN 如果操作数等于表达式列表中的一个 那么就为如果操作数等于表达式列表中的一个 那么就为 TRUE LIKE 如果操作数与一种模式相匹配 那么就为如果操作数与一种模式相匹配 那么就为 TRUE 1 5 8 1 5 8 通配符通配符 字符串在模式匹配过程中 常规字符必须与字符串中指定的字符完全匹配 然而 可使用字符串的任 意片段匹配通配符 包含零个或更多字符的任意字符串 WHERE title LIKE computer 将查找处于书名任意位置的包含单词将查找处于书名任意位置的包含单词 computer 的所的所 有书名 有书名 下划线 下划线 任何单个字符 WHERE au fname LIKE ean 将查找以将查找以 ean 结尾的所有结尾的所有 4 个字母的名字个字母的名字 Dean Sean 等 等 第 1 章 Error No text of specified style in document 1 5 9 1 5 9 添加数据操作方法添加数据操作方法 1 1 使用使用 INSERT VALUES 语句插入数据语句插入数据 INSERT VALUES 语句是 SQL 语句中最常用的用于向数据表中插入数据的方法 使用 INSERT INSERT 语句可向表中添加一个或多个新行 语法格式语法格式 INSERT INTO table or view 字段名 1 字段名 n VALUES 字段值 1 字段值 n 示例示例 insert into stuinfo stuno stuName birthday stutel stuAddress classname values周文学 90 03 17 2222273 湖南衡阳 Y2T116 1 5 10 1 5 10 添加数据操作方法添加数据操作方法 2 2 使用使用 SELECT INTO 语句创建表语句创建表 SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档 使用该语句可以把任何查 询结果集放置到一个新表中 还可以通过使用 SELECT INTO 语句解决复杂的问题 语法格式语法格式 SELECT INTO new table FROM n WHERE 示例示例 select StuNo StuName StuAge StuSex StuTel StuADDress birthday classname into stuInfo bak from StuInfo 1 5 11 1 5 11 添加数据操作方法添加数据操作方法 3 3 使用使用 INSERT SELECT 语句插入数据语句插入数据 使用使用 INSERT SELECT 语句可以把其他数据表的行记录添加到现有的表中 同时 可以显示执行多语句可以把其他数据表的行记录添加到现有的表中 同时 可以显示执行多 行插入 行插入 语法格式语法格式 INSERT table name SELECT column list FROM table list WHERE search condirions 示例示例 insert into StuInfo bak select from StuInfo 1 5 12 1 5 12 更新数据操作语法更新数据操作语法 修改关系中的数据需要使用修改关系中的数据需要使用 UPDATE 语句语句 语法规则 语法规则 UPDATE SET WHERE 1 5 13 1 5 13 更新数据操作示例更新数据操作示例 修改年龄为修改年龄为 38 岁岁 update StuInfo set stuage 38 where stuno根据其他表更新行根据其他表更新行 update 商品信息 第 1 章 Error No text of specified style in document set 厂商编号 select 厂商编号 FROM 厂商信息 where 厂商名称 牛牛集团 where 商品名称 眼霜 ml 使用使用 top 表达式随机更改前表达式随机更改前 5 前记录前记录 UPDATE TOP 5 商品信息 SET 商品价格 商品价格 0 75 1 5 14 1 5 14 删除数据操作删除数据操作 在表中可能有一些无用的数据需要删除 删除数据用在表中可能有一些无用的数据需要删除 删除数据用 DELETE 语句语句 语法规则语法规则 DELETE FROM WHERE 示例示例 DELETE FROM stuinfo WHERE stuAddress 珠海 1 5 15 1 5 15 TRUNCATETRUNCATE 删除表数据删除表数据 在确定需要删除表中的所有数据的时候 可以使用在确定需要删除表中的所有数据的时候 可以使用 TRUNCATE TABLE 语句 语句 语法规则语法规则 TRUNCATE TABLE database owner table name 示例示例 TRUNCATE TABLE stuinfo 1 5 16 1 5 16 TRUNCATETRUNCATE 与与 DELETEDELETE 的区别的区别 TRUNCATE 删除数据的速度快 删除数据的速度快 DELETE 相对更慢 相对更慢 TRUNCATE 只能一次性删除表中全部数据 只能一次性删除表中全部数据 DELETE 可以删除指定条件的数据行 可以删除指定条件的数据行 TRUNCATE 删除数据后不能回滚删除数据后不能回滚 不写日志不写日志 而 而 DELETE 可以回滚 可以回滚 使用使用 TRUNCATE 删除表数据时 不会触发删除触发器 而删除表数据时 不会触发删除触发器 而 DELETE 则会触发相应的删除触发器 则会触发相应的删除触发器 对于有对于有 FOREIGN KEY 约束引用的表不能使用约束引用的表不能使用 TRUNCATE 而 而 DELETE 则可以则可以 除已经被引用的数除已经被引用的数 据行以外据行以外 1 5 17 1 5 17 SELECTSELECT 简单查询简单查询 SELECT 语句是一个查询表达式 包括 SELECT FROM WHERE ORDER GROUP BY 和 BY 子句 SELECT 语句具有数据查询 统计 分组和排序的功能 可以精确地对数据库进行查找 也可以进行模糊查询 语法规则语法规则 SELECT ALL DISTINCT select list INTO new table FROM table source WHERE search conditions HAVING search conditions ORDER BY order expression ASC DESC 第 1 章 Error No text of specified style in document 1 5 18 1 5 18 使用使用 SELECTSELECT 语句语句 使用SELECT语句 查询全部行与列查询全部行与列 Select from stuinfo Select stuno stuName stuAge stuSex stuTel 查部分的行与列查部分的行与列 添添加加top n查查询询顶顶部部几几条条记记录录 Select top 3 from stuinfo where stuTel like 139 添添加加top n percent查查询询表表中中百百分分比比的的记记录录 Select top 3 perscent from stuinfo where stuTel like 139 使使用用 号号并并列列查查询询 Select stuno stuName stuAddress birthday 查查询询中中使使用用as以以别别名名显显示示字字段段名名 Select stuno stuName stuAddress as fullName 生 日 birthday 1 5 19 1 5 19 使用使用 WHEREWHERE 子句子句 作用作用 WHERE 子句被用于选取需要检索的数据行 灵活地使用 WHERE 子句能够指定许多不同的查询条 件 以实现更精确的查询 使用的条件使用的条件 比较运算符 比较运算符 逻辑运算符 逻辑运算符 AND OR NOT 范围运算符 范围运算符 BETWEEN NOT BETWEEN 列表运算符 列表运算符 IN NOT IN 字符匹配符 字符匹配符 LIKE NOT LIKE 未知值 未知值 IS NULL IS NOT NULL 1 5 20 1 5 20 使用使用 ORDERORDER BYBY 子句子句 作用 作用 ORDER BY 子句一般位于 SELECT 语句的最后 它的功能是对查询返回的数据进行重新排序 用户 可以通过 ORDER BY 子句来限定查询返回结果的输出顺序 如正序或者倒序等 语法规则语法规则 ORDER BY order expression ASC DESC 当排序要求为 ASC 时 行按排序列值的升序排序 排序要求为 DESC 时 结果集的行按排序列值的降 序排列 如没指定排序要求 则使用默认值 ASC 第 1 章 Error No text of specified style in document 示例示例 SELECT FROM stuinfo ORDER BY stuAge ASC 1 5 21 1 5 21 使用使用 ORDERORDER BYBY 子句子句 作用 作用 ORDER BY 子句一般位于 SELECT 语句的最后 它的功能是对查询返回的数据进行重新排序 用户可以通过 ORDER BY 子句来限定查询返回结果的输出顺序 如正序或者倒序等 语法规则语法规则 ORDER BY order expression ASC DESC 当排序要求为 ASC 时 行按排序列值的升序排序 排序要求为 DESC 时 结果集的行按排序列值 的降序排列 如没指定排序要求 则使用默认值 ASC 示例示例 SELECT FROM stuinfo ORDER BY stuAge ASC 1 5 22 1 5 22 使用使用 HAVINGHAVING 子句子句 作用 作用 HAVING 子句常与 GROUP BY 子句共同使用 以对分组后的结果再次进行有条件筛选 语法规则 语法规则 GROUP BY group by expression HAVING search conditions search conditions 为查询所需的条件 即返回查询结果的满足条件 为查询所需的条件 即返回查询结果的满足条件 示例 示例 select YEAR birthday year COUNT as amount from StuInfo group by YEAR birthday having count 3 1 5 23 1 5 23 基本连接查询基本连接查询 示例 示例 select s stuno s stuName s stuSex s birthday e Written e Lab from StuInfo s Exam e where s StuNo e StuNo and s StuAge 60 and Lab 60 1 5 34 1 5 34 使用使用 EXISTSEXISTS 关键字关键字 EXISTS 关键字的作用是在 WHERE 子句中测试子查询返回的行是否存在 如果存在则返回真值 如果不 存在则返回假值 语法 语法 WHERE EXISTS NOT EXISTS subquery 示例 示例 SELECT from stuInfo s WHERE Not EXISTS SELECT stuNo FROM exam e WHERE e stuno s stuNo 1 5 35 1 5 35 使用使用 ANYANY SOMESOME ALLALL 关键字关键字 ANY ALL 和 SOME 是 SQL 支持的在子查询中进行比较的关键字 ANY 和 SOME 都表示外围查询限定 条件与子查询返回值进行比较 如果外围查询中有任意多个数据满足比较条件 则全部返回 使用 ALL 关键字表示外围查询限定条件与子查询返回值进行比较 外围子查询返回结果必须全部满足比较 条件 示例 示例 SELECT from stuInfo s WHERE stuNo ANY SELECT stuNo FROM exam e WHERE Written 60 and Lab 60 1 5 36 1 5 36 嵌套子查询嵌套子查询 子查询是可以嵌套使用的 并且用户可以在一个查询中嵌套任意多个子查询 即一个子查询中还可以 包含另一个子查询 这种查询方式就是嵌套子查询 示例 示例 select from select StuNo StuName StuAge StuAddress from stuInfo where StuAge 30 as aj 1 6 1 6 标题二标题二 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文 第 1 章 Error No text of specified style in document 1 6 1 1 6 1 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 2 1 6 2 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 3 1 6 3 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 4 1 6 4 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 5 1 6 5 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 6 1 6 6 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文 1 6 7 1 6 7 标题三标题三 正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文正文

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论