logo资料库

sybase数据库的基本语法.pdf

第1页 / 共792页
第2页 / 共792页
第3页 / 共792页
第4页 / 共792页
第5页 / 共792页
第6页 / 共792页
第7页 / 共792页
第8页 / 共792页
资料共792页,剩余部分请下载后查看
Transact-SQL 用户指南
目录
关于本手册
第 1 章 SQL 构件块
Adaptive Server 中的 SQL
命名约定
Adaptive Server 中的表达式
Transact-SQL 扩展
符合 ANSI 标准
Adaptive Server 登录帐号
isql 实用程序
pubs2 和 pubs3 样本数据库
第 2 章 查询:从表中选择数据
什么是查询?
使用 select 子句选择列
利用 distinct 消除重复查询结果
利用 from 子句指定表
使用 where 子句选择行
匹配模式
第 3 章 使用集合、分组和排序
使用集合函数
将查询结果分组:group by 子句
选择数据组:having 子句
对查询结果进行排序:order by 子句
汇总数据组:compute 子句
组合查询:union 运算符
第 4 章 连接:从若干表中检索数据
连接如何工作
如何使连接结构化
如何处理连接
等值连接和自然连接
使用其它条件的连接
未基于等同性的连接
自连接和相关名
不均等连接
连接两个以上的表
外部连接
空值如何影响连接
确定要连接的表列
第 5 章 子查询:在其它查询中使用查询
子查询工作方式
子查询类型
使用相关子查询
第 6 章 使用和创建数据类型
Transact-SQL 数据类型的工作原理
使用系统提供的数据类型
数据类型之间的转换
混合型算术和数据类型层次
创建用户定义的数据类型
获取有关数据类型的信息
第 7 章 添加、更改和删除数据
简介
数据类型输入规则
添加新数据
更改现有数据
更改 text、unitext 和 image 数据
删除数据
删除表中的所有行
第 8 章 创建数据库和表
何为数据库和表?
使用和创建数据库
变更数据库的大小
删除数据库
创建表
管理表中的标识间隔
为表定义完整性约束
如何设计和创建表
通过查询结果来创建新表: select into
改变现有表
删除表
计算列 ― 概述
给用户分配权限
获得有关数据库和表的信息
第 9 章 SQL 派生表
与抽象计划派生表的区别
SQL 派生表的工作方式
SQL 派生表的优点
SQL 派生表语法
使用 SQL 派生表
第 10 章 对表和索引进行分区
概述
分区类型
索引和分区
创建和管理分区
变更数据分区
配置分区
在分区表中执行更新、删除和插入
更新分区键列中的值
显示有关分区的信息
截断分区
使用分区装载表数据
更新分区统计
第 11 章 视图:限制访问数据
视图的工作原理
创建视图
通过视图检索数据
通过视图修改数据
删除视图
使用视图作为安全性机制
获取有关视图的信息
第 12 章 创建表的索引
索引如何工作
创建索引
计算列的索引
基于函数的索引
使用聚簇或非聚簇索引
指定索引选项
删除索引
确定表上存在哪些索引
更新关于索引的统计信息
第 13 章 为数据定义缺省值和规则
缺省值和规则是怎样执行的
创建缺省值
删除缺省值
创建规则
删除规则
获得有关缺省值和规则的信息
第 14 章 使用批处理和控制流语言
简介
批处理相关的规则
使用控制流语言
局部变量
全局变量
第 15 章 在查询中使用内置函数
返回数据库信息的系统函数
用于字符串或表达式的字符串函数
用于 text、unitext 和 image 数据的文本函数
集合函数
数学函数
日期函数
数据类型转换函数
安全性函数
第 16 章 使用存储过程
存储过程如何工作
创建和执行存储过程
返回存储过程的信息
与存储过程关联的限制
重命名存储过程
使用存储过程作为安全机制
删除存储过程
系统过程
获取有关存储过程的信息
第 17 章 使用扩展存储过程
概述
为 ESP 创建函数
注册 ESP
删除 ESP
执行 ESP
系统 ESP
获取有关 ESP 的信息
ESP 例外和消息
手动启动 XP Server
第 18 章 游标:访问数据
游标的工作方式
使用游标
第 19 章 触发器:强制实施参照完整性
触发器的工作原理
创建触发器
使用触发器维护参照完整性
多行注意事项
回退触发器
嵌套触发器
与触发器相关的规则
禁用触发器
删除触发器
获取有关触发器的信息
第 20 章 事务:维护数据一致性和恢复
事务的工作方式
使用事务
选择事务模式和隔离级别
在存储过程和触发器中使用事务
在事务中使用游标
使用事务时应考虑的问题
事务备份和恢复
第 21 章 锁定命令和选项
设置等待锁的时间限制
队列处理的 Readpast 锁定
附录 A pubs2 数据库
pubs2 数据库中的表
pubs2 数据库框图
附录 B pubs3 数据库
pubs3 数据库中的表
pubs3 数据库框图
索引
Transact-SQL 用户指南 Adaptive Server® Enterprise 15.0
文档 ID:DC32970-01-1500-01 最后修订日期:2005 年 10 月 版权所有 ©1987-2006 Sybase, Inc. 保留所有权利。 本出版物适用于 Sybase 软件和任何后续版本,除非在新版本或技术声明中另有说明。此文档中的信息如有更改,恕不另行 通知。此处说明的软件按许可协议提供,其使用和复制必须符合该协议的条款。 若要订购附加文档,美国和加拿大的客户请拨打客户服务部门电话 (800) 685-8225 或发传真至 (617) 229-9845。 持有美国许可协议的其它国家 / 地区的客户可通过上述传真号码与客户服务部门联系。所有其他国际客户请与 Sybase 子公司 或当地分销商联系。仅在定期安排的软件发布日期提供升级。未经 Sybase, Inc. 的事先书面许可,本书的任何部分不得以任 何形式、任何手段 (电子的、机械的、手动、光学的或其它手段)进行复制、传播或翻译。 Sybase、Sybase 徽标、ADA Workbench、Adaptable Windowing Environment、Adaptive Component Architecture、Adaptive Server、 Adaptive Server Anywhere、 Adaptive Server Enterprise、 Adaptive Server Enterprise Monitor、 Adaptive Server Enterprise Replication、 Adaptive Server Everywhere、 Adaptive Warehouse、 Afaria、 Answers Anywhere、 Anywhere Studio、 Application Manager、AppModeler、APT Workbench、APT-Build、APT-Edit、APT-Execute、APT-Translator、APT-Library、AvantGo Mobile Delivery、 AvantGo Mobile Inspection、 AvantGo Mobile Marketing Channel、 AvantGo Mobile Pharma、 AvantGo Mobile Sales、 AvantGo Pylon、 AvantGo Pylon Application Server、 AvantGo Pylon Conduit、 AvantGo Pylon PIM Server、 AvantGo Pylon Pro、 Backup Server、 BizTracker、 ClearConnect、 Client-Library、 Client Services、 Convoy/DM、 Copernicus、 Data Pipeline、 Data Workbench、 DataArchitect、 Database Analyzer、 DataExpress、 DataServer、 DataWindow、 DataWindow .NET、 DB-Library、 dbQueue、Developers Workbench、DirectConnect、DirectConnect Anywhere、Distribution Director、e-ADK、E-Anywhere、e-Biz Impact、 e-Biz Integrator、 E-Whatever、 EC Gateway、 ECMAP、 ECRTP、 eFulfillment Accelerator、 Embedded SQL、 EMS、 Enterprise Application Studio、Enterprise Client/Server、Enterprise Connect、Enterprise Data Studio、Enterprise Manager、Enterprise SQL Server Manager、 Enterprise Work Architecture、 Enterprise Work Designer、 Enterprise Work Modeler、 eProcurement Accelerator、EWA、Financial Fusion、Financial Fusion Server、Gateway Manager、GlobalFIX、iAnywhere、iAnywhere Solutions、 ImpactNow、 Industry Warehouse Studio、 InfoMaker、 Information Anywhere、 Information Everywhere、 InformationConnect、 InternetBuilder、iScript、Jaguar CTS、jConnect for JDBC、M2M Anywhere、Mach Desktop、Mail Anywhere Studio、Mainframe Connect、Maintenance Express、Manage Anywhere Studio、M-Business Channel、M-Business Network、M-Business Server、MDI Access Server、MDI Database Gateway、media.splash、MetaWorks、mFolio、Mirror Activator、MySupport、Net-Gateway、Net- Library、New Era of Networks、ObjectConnect、ObjectCycle、OmniConnect、OmniSQL Access Module、OmniSQL Toolkit、Open Biz、Open Client、Open ClientConnect、Open Client/Server、Open Client/Server Interfaces、Open Gateway、Open Server、Open ServerConnect、Open Solutions、Optima++、PB-Gen、PC APT Execute、PC DB-Net、PC Net Library、PocketBuilder、Pocket PowerBuilder、 Power++、 power.stop、 PowerAMC、 PowerBuilder、 PowerBuilder Foundation Class Library、 PowerDesigner、 PowerDimensions、PowerDynamo、PowerScript、PowerSite、PowerSocket、Powersoft、PowerStage、PowerStudio、PowerTips、 Powersoft Portfolio、Powersoft Professional、PowerWare Desktop、PowerWare Enterprise、ProcessAnalyst、QAnywhere、Rapport、 RemoteWare、RepConnector、Replication Agent、Replication Driver、Replication Server、Replication Server Manager、Replication Toolkit、Report-Execute、Report Workbench、Resource Manager、RFID Anywhere、RW-DisplayLib、RW-Library、S-Designor、 SDF、 Search Anywhere、 Secure SQL Server、 Secure SQL Toolset、 Security Guardian、 SKILS、 smart.partners、 smart.parts、 smart.script、SOA Anywhere、SQL Advantage、SQL Anywhere、SQL Anywhere Studio、SQL Code Checker、SQL Debug、SQL Edit、SQL Edit/TPU、SQL Everywhere、SQL Modeler、SQL Remote、SQL Server、SQL Server Manager、SQL SMART、SQL Toolset、SQL Server/CFT、SQL Server/DBM、SQL Server SNMP SubAgent、SQL Station、SQLJ、STEP、SupportNow、S.W.I.F.T. Message Format Libraries、Sybase Central、Sybase Client/Server Interfaces、Sybase Financial Server、Sybase Gateways、Sybase IQ、Sybase MPP、Sybase SQL Desktop、Sybase SQL Lifecycle、Sybase SQL Workgroup、Sybase User Workbench、SybaseWare、 Syber Financial、SyberAssist、SybFlex、SyBooks、System 10、System 11、System XI(徽标)、SystemTools、Tabular Data Stream、 TradeForce、Transact-SQL、Translation Toolkit、UltraLite、UltraLite.NET、UNIBOM、Unilib、Uninull、Unisep、Unistring、URK Runtime Kit for UniCode、VisualWriter、VQL、WarehouseArchitect、Warehouse Control Center、Warehouse Studio、Warehouse WORKS、Watcom、Watcom SQL、Watcom SQL Server、Web Deployment Kit、Web.PB、Web.SQL、WebSights、WebViewer、 WorkGroup SQL Server、 XA-Library、 XA-Server、 XcelleNet 和 XP Server 是 Sybase, Inc. 的商标。 Unicode 和 Unicode 徽标是 Unicode, Inc. 的注册商标。 本书中使用的所有其它公司名和产品名均可能是相应公司的商标或注册商标。 Use, duplication, or disclosure by the government is subject to the restrictions set forth in subparagraph (c)(1)(ii) of DFARS 52.227-7013 for the DOD and as set forth in FAR 52.227-19(a)-(d) for civilian agencies. Sybase, Inc., One Sybase Drive, Dublin, CA 94568。
目录 关于本手册 ........................................................................................................................... xix 第 1 章 SQL 构件块 ...................................................................................... 1 Adaptive Server 中的 SQL .............................................................. 1 查询、数据修改和命令 ............................................................. 2 表、列和行 ............................................................................... 2 关系操作 ................................................................................... 3 编译对象 ................................................................................... 3 命名约定 .......................................................................................... 5 SQL 数据字符 ........................................................................... 5 SQL 语言字符 ........................................................................... 6 标识符 ....................................................................................... 7 Adaptive Server 中的表达式 .......................................................... 13 算术表达式和字符表达式 ........................................................ 13 关系表达式和逻辑表达式 ........................................................ 19 Transact-SQL 扩展 ........................................................................ 20 compute 子句 ......................................................................... 21 控制流语言 ............................................................................. 21 存储过程 ................................................................................. 21 扩展存储过程 .......................................................................... 22 触发器 ..................................................................................... 22 缺省值和规则 .......................................................................... 22 错误处理和 set 选项 ............................................................... 23 SQL 的其它 Adaptive Server 扩展 .......................................... 24 符合 ANSI 标准 ............................................................................. 25 美国联邦信息处理标准 (FIPS) 标志程序 ................................. 26 链式事务和隔离级别 ............................................................... 26 标识符 ..................................................................................... 27 SQL 标准样式的注释 .............................................................. 27 右截断字符串 .......................................................................... 27 update 和 delete 语句所要求的权限 ....................................... 28 算术错误 ................................................................................. 28 同义关键字 ............................................................................. 29 空值处理 ................................................................................. 29 Transact-SQL 用户指南 iii
目录 第 2 章 第 3 章 iv Adaptive Server 登录帐号 ............................................................. 29 组成员资格 ............................................................................. 30 角色成员资格 .......................................................................... 30 有关您的 Adaptive Server 帐号的信息 ................................... 31 口令更改 ................................................................................. 31 远程登录名 ............................................................................. 32 isql 实用程序 ................................................................................. 33 缺省数据库 ............................................................................. 34 使用 isql 的基于网络的安全服务 ............................................. 35 isql 注销 .................................................................................. 35 pubs2 和 pubs3 样本数据库 .......................................................... 36 样本数据库内容 ...................................................................... 36 查询:从表中选择数据 .................................................................... 39 什么是查询? ................................................................................. 39 select 语法 .............................................................................. 40 使用 select 子句选择列 .................................................................. 41 使用 select * 选择所有列 ........................................................ 41 选择特定列 ............................................................................. 42 重新安排列顺序 ...................................................................... 43 在查询结果中重命名列 ........................................................... 43 使用表达式 ............................................................................. 44 选择 text、 unitext、 image 和值 ............................................ 50 选择列表摘要 .......................................................................... 52 利用 distinct 消除重复查询结果 ..................................................... 53 利用 from 子句指定表 .................................................................... 55 使用 where 子句选择行 ................................................................. 56 比较运算符 ............................................................................. 57 范围 (between 和 not between) .......................................... 58 列表 (in 和 not in) ................................................................ 60 匹配模式 ........................................................................................ 63 匹配字符串:like .................................................................... 63 字符串和引号 .......................................................................... 69 “未知”值:NULL ................................................................. 69 带有逻辑运算符的连接条件 .................................................... 74 使用集合、分组和排序 .................................................................... 77 使用集合函数 ................................................................................. 77 集合函数和数据类型 ............................................................... 79 count 与 count(*) .................................................................... 80 带有 distinct 的集合函数 ......................................................... 81 空值和集合函数 ...................................................................... 82 Adaptive Server Enterprise
目录 将查询结果分组:group by 子句 ................................................... 83 group by 语法 ......................................................................... 84 group by 和 SQL 标准 ............................................................ 84 用 group by 对组进行嵌套 ...................................................... 85 使用 group by 在查询中引用其它列 ........................................ 85 使用外部连接和集合扩展列 .................................................... 89 表达式和 group by .................................................................. 91 在嵌套集合中使用 group by .................................................... 92 空值和 group by ...................................................................... 93 where 子句和 group by ........................................................... 94 group by 和 all ........................................................................ 95 不带 group by 的集合 ............................................................. 96 选择数据组:having 子句 .............................................................. 97 having、 group by 和 where 子句如何交互作用 ..................... 99 使用不带 group by 的 having ................................................ 101 对查询结果进行排序:order by 子句 ........................................... 103 order by 和 group by ............................................................. 105 与 select distinct 一起使用的 order by 和 group by .............. 106 汇总数据组:compute 子句 ......................................................... 107 行集合和 compute ................................................................ 110 在 compute 后指定多列 ........................................................ 111 使用多个 compute 子句 ........................................................ 112 将集合应用于多列 ................................................................. 113 在同一 compute 子句中使用不同集合 .................................. 114 生成总和:不带 by 的 compute ............................................ 115 组合查询:union 运算符 .............................................................. 116 union 查询的准则 .................................................................. 118 将 union 与其它 Transact-SQL 命令一起使用 ...................... 121 连接:从若干表中检索数据 .......................................................... 123 连接如何工作 ............................................................................... 124 连接语法 ............................................................................... 124 连接和关系模型 .................................................................... 125 如何使连接结构化 ....................................................................... 125 from 子句 .............................................................................. 127 where 子句 ........................................................................... 128 如何处理连接 ............................................................................... 130 等值连接和自然连接 .................................................................... 130 使用其它条件的连接 .................................................................... 132 未基于等同性的连接 .................................................................... 132 自连接和相关名 ........................................................................... 134 不均等连接 .................................................................................. 135 不均等连接和子查询 ............................................................. 137 连接两个以上的表 ....................................................................... 138 第 4 章 Transact-SQL 用户指南 v
目录 第 5 章 外部连接 ...................................................................................... 140 内部表和外部表 .................................................................... 140 外部连接限制 ........................................................................ 141 用于外部连接的视图 ............................................................. 141 ANSI 内部和外部连接 ........................................................... 142 ANSI 外部连接 ...................................................................... 147 Transact-SQL 外部连接 ........................................................ 158 空值如何影响连接 ....................................................................... 162 确定要连接的表列 ....................................................................... 163 子查询:在其它查询中使用查询 ................................................... 165 子查询工作方式 ........................................................................... 165 子查询语法 ........................................................................... 166 子查询限制 ........................................................................... 166 使用子查询的示例 ................................................................. 167 限定列名 ............................................................................... 168 带相关名的子查询 ................................................................. 169 多重嵌套 ............................................................................... 170 update、 delete 和 insert 语句中的子查询 ........................... 171 条件语句中的子查询 ............................................................. 172 用子查询替代表达式 ............................................................. 172 子查询类型 .................................................................................. 173 表达式子查询 ........................................................................ 174 定量判定子查询 .................................................................... 177 与 in 连用的子查询 ............................................................... 183 与 not in 连用的子查询 ......................................................... 185 使用包含 NULL 的 not in 的子查询 ....................................... 186 与 exists 连用的子查询 ......................................................... 186 与 not exists 连用的子查询 ................................................... 189 使用 exists 查找交集与差集 .................................................. 190 使用 SQL 派生表的子查询 .................................................... 191 使用相关子查询 ........................................................................... 191 包含 Transact-SQL 外部连接的相关子查询 .......................... 192 带相关名的相关子查询 ......................................................... 193 带比较运算符的相关子查询 .................................................. 194 在 having 子句中的相关子查询 ............................................. 195 vi Adaptive Server Enterprise
第 6 章 第 7 章 目录 使用和创建数据类型 ..................................................................... 197 Transact-SQL 数据类型的工作原理 ............................................ 197 使用系统提供的数据类型 ............................................................. 198 精确数值类型:整数 ............................................................. 200 精确数值类型:小数 ............................................................. 200 近似数值数据类型 ................................................................. 201 货币数据类型 ........................................................................ 202 日期和时间数据类型 ............................................................. 202 字符数据类型 ........................................................................ 203 二进制数据类型 .................................................................... 207 bit 数据类型 .......................................................................... 209 timestamp 数据类型 ............................................................. 209 sysname 和 longsysname 数据类型 ..................................... 209 数据类型之间的转换 .................................................................... 210 混合型算术和数据类型层次 ......................................................... 210 使用 money 数据类型 ........................................................... 212 确定精度和标度 .................................................................... 213 创建用户定义的数据类型 ............................................................. 213 使用 identity 属性创建用户定义的数据类型 .......................... 214 指定长度、精度和标度 ......................................................... 214 指定空值类型 ........................................................................ 215 将规则和缺省值与用户定义的数据类型相关联 ..................... 215 创建具有 IDENTITY 属性的用户定义的数据类型 ................. 215 从用户定义的数据类型创建 IDENTITY 列 ............................ 216 删除用户定义的数据类型 ...................................................... 216 获取有关数据类型的信息 ............................................................. 217 添加、更改和删除数据 ................................................................. 219 简介 ............................................................................................. 219 权限 ...................................................................................... 220 参照完整性 ........................................................................... 220 事务 ...................................................................................... 220 使用样本数据库 .................................................................... 221 数据类型输入规则 ....................................................................... 221 char、nchar、unichar、univarchar、varchar、nvarchar、unitext 和 text ............................................................................ 221 日期和时间 ........................................................................... 222 binary、 varbinary 和 image ................................................. 227 money 和 smallmoney .......................................................... 227 float、 real 和 double precision ............................................ 228 decimal 和 numeric ............................................................... 228 整数类型及其无符号形式 ...................................................... 229 timestamp ............................................................................. 229 Transact-SQL 用户指南 vii
目录 第 8 章 添加新数据 .................................................................................. 230 insert 语法 ............................................................................ 230 使用 values 添加新行 ........................................................... 231 插入数据到指定列 ................................................................. 231 使用 select 添加新行 ............................................................ 239 更改现有数据 ............................................................................... 243 update 语法 .......................................................................... 243 将 set 子句用于 update ......................................................... 244 将 where 子句用于 update .................................................... 245 将 from 子句用于 update ...................................................... 246 使用连接执行更新 ................................................................. 246 更新 IDENTITY 列 ................................................................ 247 更改 text、 unitext 和 image 数据 ................................................ 247 删除数据 ...................................................................................... 249 将 from 子句用于 delete ....................................................... 249 从 IDENTITY 列删除 ............................................................. 250 删除表中的所有行 ....................................................................... 251 truncate table 语法 ............................................................... 251 创建数据库和表 ............................................................................. 253 何为数据库和表? ....................................................................... 253 强制实现数据库的数据完整性 ............................................... 254 数据库中的权限 .................................................................... 255 使用和创建数据库 ....................................................................... 256 选择数据库:use .................................................................. 257 创建用户数据库:create database ....................................... 257 quiesce database 命令 ......................................................... 259 变更数据库的大小 ....................................................................... 260 删除数据库 .................................................................................. 261 创建表 ......................................................................................... 261 每个表的最大列数 ................................................................. 261 创建表示例 ........................................................................... 262 选择表名 ............................................................................... 263 将表创建于不同的数据库中 .................................................. 263 create table 语法 .................................................................. 264 使用 IDENTITY 列 ................................................................ 265 允许在列中使用空值 ............................................................. 268 使用临时表 ........................................................................... 270 viii Adaptive Server Enterprise
分享到:
收藏