随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
目前,原Sybase所有产品(包括:Adaptive Server Enterprise、Sybase IQ、Replication Server、PowerDesigner等)的官方手册仍然可以从https://infocenter.sybase.com/help/index.jsp进行浏览或下载。暂不清楚该网站https://infocenter.sybase.com/help/index.jsp何时会被完全迁移到SAP Support上!
Sybase官方手册英文版有html和pdf两种格式,而中文版手册只有pdf一种格式。为了国内Sybase用户更方便、快捷地搜索Sybase常见产品的官方手册内容,特将中文版Sybase官方手册转为html格式!
Sybase产品官方手册中文版的html格式所有内容的版权归SAP公司所有!本博客站长是Sybase数据库的铁杆粉丝!
如有Sybase数据库技术问题需要咨询,请联系我!
以下官方手册为ASE 15.7 ESD#2中文版:
- 新增功能公告 适用于 Windows、Linux 和 UNIX 的 Open Server 15.7 和 SDK 15.7
- 新增功能摘要
- 新增功能指南
- ASE 15.7 发行公告
- 配置指南(windows)
- 安装指南(windows)
- 参考手册:构件块
- 参考手册:命令
- 参考手册:过程
- 参考手册:表
- Transact-SQL® 用户指南
- 系统管理指南,卷 1
- 系统管理指南,卷 2
- 性能和调优系列:基础知识
- 性能和调优系列:锁定和并发控制
- 性能和调优系列:监控表
- 性能和调优系列:物理数据库调优
- 性能和调优系列:查询处理和抽象计划
- 性能和调优系列:使用 sp_sysmon 监控 Adaptive Server
- 性能和调优系列:利用统计分析改进性能
- 程序员参考 jConnect for JDBC 7.0.7
- Adaptive Server Enterprise 中的 Java
- 组件集成服务用户指南
- Ribo 用户指南
- 内存数据库用户指南
- Sybase Control Center for Adaptive Server® Enterprise
- 安全性管理指南
- 实用程序指南
convert
说明 将指定的值转换成另一数据类型或其它 datetime 显示格式。
语法 convert (datatype [(length) | (precision[, scale])] [null | not null], expression [, style])
参数 datatype
系统提供的数据类型(例如,char(10)、unichar (10)、varbinary (50) 或 int), 表达式可以转换成这些数据类型。不能使用用户定义的数据类型。
如果数据库中已启用 Java, datatype 也可以是当前数据库中的
Java-SQL 类。
length
是与 char、 nchar、 unichar、 univarchar、 varchar、 nvarchar、 binary 和 varbinary 数据类型一起使用的可选参数。如果不提供长度, Adaptive Server 将把字符类型的数据截断到 30 个字符,把二进制类型的数据截 断到 30 字节。字符和二进制表达式可以具有的最大长度是 64K。
precision
是 numeric 或 decimal 数据类型中的有效位数。对于 float 数据类型,精 度是指尾数中有效的二进制位数。如果不提供精度, Adaptive Server 将对 numeric 和 decimal 数据类型使用缺省精度 18。
scale
是 numeric 或 decimal 数据类型中小数点右侧的位数。如果不提供标 度, Adaptive Server 将使用缺省标度 0。
null | not null
指定结果表达式的可为空性。如果不提供 null 或 not null,转换后的结 果将与表达式具有相同的可为空性。
expression 是要从一种数据类型或日期格式转换为另一种数据类型或日期格式 的值。
如果数据库中已启用 Java,expression 可以是将要转换为 Java-SQL 类 的值。
当 unichar 用作目标数据类型时,如果未指定长度,则使用缺省长度, 即 30 个 Unicode 值。
是用于已转换数据的显示格式。如果将 money 或 smallmoney 数据转换 为字符类型,则使用 style 1,在每 3 位数后显示一个逗号。
如果将 datetime 或 smalldatetime 数据转换为字符类型,则使用 表 2-3 中的样式编号指定显示格式。最左列的值显示 2 位数的年份 ( yy )。对 于 4 位数的年份 ( yyyy ),可添加 100,或使用中间列的值。
在将 date 数据转换为字符类型时,将使用 表 2-3 中的样式编号 1 到 7
(101 到 107)或 10 到 12 (110 到 112)来指定显示格式。缺省值为 100 (mon dd yyyy hh:miAM (或 PM))。如果 date 数据转换为包含 时间部分的样式,该时间部分将显示缺省值 0。
在将 time 数据转换为字符类型时,使用样式编号 8 或 9(108 或 109) 来指定显示格式。缺省值为 100(mon dd yyyy hh:miAM(或 PM))。 如果 time 数据转换为包含日期部分的样式,将显示缺省日期 Jan 1, 1900。
表 2-3:使用 style 参数的日期格式转换
不含世纪 (yy) |
含世纪 (yyyy) |
标准 |
输出 |
- |
0 或 100 |
Default |
mon dd yyyy hh:mm AM (或 PM) |
1 |
101 |
美国 |
mm/dd/yy |
2 |
2 |
SQL 标准 |
yy.mm.dd |
3 |
103 |
英语 / 法语 |
dd/mm/yy |
4 |
104 |
德语 |
dd.mm.yy |
5 |
105 |
dd-mm-yy |
|
6 |
106 |
dd mon yy |
|
7 |
107 |
mon dd, yy |
|
8 |
108 |
HH:mm:ss |
|
- |
9 或 109 |
缺省值 + 毫秒 |
mon dd yyyy hh:mm:ss AM(或 PM) |
10 |
110 |
美国 |
mm-dd-yy |
11 |
111 |
日本 |
yy/mm/dd |
12 |
112 |
ISO |
yymmdd |
13 |
113 |
yy/dd/mm |
|
14 |
114 |
mm/yy/dd |
|
14 |
114 |
hh:mi:ss:mmmAM (或 PM) |
|
15 |
115 |
dd/yy/mm |
|
- |
16 或 116 |
mon dd yyyy HH:mm:ss |
|
17 |
117 |
hh:mmAM |
说明 “mon”表示英文拼写的月份,“mm”表示月份或分钟。“HH”表示 24 小时制时钟值, “hh”表示 12 小时制时钟值。最后一行 (第 23 行)包含文字 “T”以分离格式中的日期部分 和时间部分。
不含世纪 (yy) |
含世纪 (yyyy) |
标准 |
输出 |
18 |
118 |
HH:mm |
|
19 |
hh:mm:ss:zzzAM |
||
20 |
hh:mm:ss:zzz |
||
21 |
yy/mm/dd HH:mm:ss |
||
22 |
yy/mm/dd HH:mm AM (或 PM) |
||
23 |
yyyy-mm-ddTHH:mm:ss |
说明 “mon”表示英文拼写的月份,“mm”表示月份或分钟。“HH”表示 24 小时制时钟值,
“hh”表示 12 小时制时钟值。最后一行 (第 23 行)包含文字 “T”以分离格式中的日期部分 和时间部分。
缺省值 (style 0 或 100)和 style 9 或 109 返回世纪 ( yyyy )。如果从 smalldatetime 转换为 char 或 varchar,包括秒或毫秒的样式将在这些位 置上显示零。
示例 示例 1
select title, convert(char(12), total_sales) from titles
示例 2
select title, total_sales from titles
where convert(char(20), total_sales) like "1%"
示例 3 将当前日期转换为样式 “3”, dd/mm/yy:
select convert(char(12), getdate(), 3)
示例 4 如果值 pubdate 可以为空,则必须使用 varchar 而不是 char,否则 可能出错:
select convert(varchar(12), pubdate, 3) from titles
示例 5 返回字符串“0x00000100”的等值整数。结果会因平台的不同而 变化:
select convert(integer, 0x00000100)
示例 6 将特定于平台的位模式作为 Sybase 二进制类型返回:
select convert (binary, 10)
示例 7 返回 1,它是 $1.11 的等值位字符串:
select convert(bit, $1.11)
示例 8 用数据类型为 char(100) 的 total_sales 创建 #tempsales,且不允许 空值。即使将 titles.total_sales 定义为允许空值,也使用不允许空值的
#tempsales.total_sales 来创建 #tempsales:
select title, convert (char(100) not null, total_sales) into #tempsales
用法 • convert 是一个数据类型转换函数,它在多种数据类型之间进行转换 并将日期 / 时间及货币数据重新格式化,以便于显示。
• 如果它们被压缩, convert 会在将它们转换为其它数据类型之前先解 压缩大对象 (LOB) 列。
• convert — 返回已转换为其它数据类型或其它 datetime 显示格式的指 定值。当从 unitext 向其它字符和二进制数据类型转换时,结果受到 目标数据类型的最大长度的限制。如果未指定长度,转换后的值将 具有缺省大小 (30 个字节)。如果正在使用 enabled enable surrogate processing,将返回整个代理 对。例 如,如果将包含 数据 U+0041U+0042U+20acU+0043 (代表 “AB unitext 列转换为 UTF-8 varchar(3) 列,则会返回以下信息:
select convert(varchar(3), ut) from untable
• convert 的参数超出该函数的定义范围时,该函数就会产生域错误。 这种错误应极少发生。
• 使用 null 或 not null 可指定目标列的可为空性。尤其是,可使用 select into 创建一个新表,然后在源表中更改现有列的数据类型和可为空性
(参见前面的示例 8)。
在以下条件下,结果将为未定义的值:
• 所转换的表达式将是 not null 结果。
• 表达式的值为空。
使用下面的 select 语句能够为可预测的结果生成已知的非空值:
select convert(int not null isnull(col2, 5)) from table1
• 您可以使用 convert 将 image 列转换为 binary 或 varbinary。这种转换 受到 binary 数据类型的最大长度的限制,该长度由服务器逻辑页大 小的最大列大小决定。如果未指定长度,转换后的值将具有缺省的 长度 (30 个字符)。
• 可以将 unichar 表达式用作目标数据类型,也可将它们转换成其它数 据类型。 unichar 表达式可在服务器支持的任何其它数据类型间显式 或隐式转换
• 当 unichar 用作目标类型时,如果您未指定长度,则使用缺省长度, 即 30 个 Unicode 值。如果目标类型的长度不足以容纳给定的表达 式,就会显示出错消息。
隐式转换
如果两种数据类型的主字段不匹配,那么在这两种数据类型之间进行隐 式转换可能导致数据截断、插入缺省值或产生错误消息。例如,如果将 datetime 值转换为 date 值,时间部分将被截断,只留下日期部分。如果 将 time 值转换为 datetime 值,将在新的 datetime 值中添加缺省的日期部 分 Jan 1, 1900。如果将 date 值转换为 datetime 值,则将向 datetime 值中 添加缺省的时间部分 00:00:00:000。
DATE -> VARCHAR、 CHAR、 BINARY、 VARBINARY、 DATETIME、 SMALLDATETIME TIME -> VARCHAR、 CHAR、 BINARY、 VARBINARY、 DATETIME、 SMALLDATETIME VARCHAR、 CHAR、 BINARY、 VARBINARY、 DATETIME、 SMALLDATETIME -> DATE VARCHAR、 CHAR、 BINARY、 VARBINARY、 DATETIME、 SMALLDATETIME -> TIME
显式转换
如果试图将 date 显式转换为 datetime,并且值 (如 “Jan 1, 1000”)超出
datetime 范围,则不允许转换并出现提示性的错误消息。
DATE -> UNICHAR、 UNIVARCHAR TIME -> UNICHAR、 UNIVARCHAR UNICHAR、 UNIVARCHAR -> DATE UNICHAR、 UNIVARCHAR -> TIME
涉及 Java 类的转换
• 如果数据库中已启用 Java,则可按下列方法使用 convert 更改数据 类型:
• 将 Java 对象类型转换为 SQL 数据类型。
• 将 SQL 数据类型转换为 Java 类型。
• 如果表达式(源类)的编译时数据类型是目标类的子类或超类, 则会将安装在 Adaptive Server 上的任何 Java-SQL 类转换为安装 在 Adaptive Server 上的任何其它 Java-SQL 类。
转换的结果与当前的数据库相关联。
标准 符合 ANSI SQL 的级别 Transact-SQL 扩展。
权限 任何用户都可以执行 convert。
另请参见 文档 《Transact-SQL 用户 指南》; 《Adaptive Server Enterprise 中的 Java》(其中列出了允许的数据类型映射,并提供了涉及 Java 类的数据 类型转换的详细信息)。
Sybase SQL Anywhere数据库恢复工具ReadASADB:
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具: ReadASADB。此工具支持ASA v5.0, v6.0, v7.0, v8.0, v9.0, v10.0, v11.0, v12.0, v16.0, v17.0等版本。
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具。
恢复Sybase SQL Anywhere的工具在国内处于领先水平。
Sybase SQL Anywhere数据库恢复工具ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具
- 适用于所有的SQL Anywhere版本 包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x,16.x,17.x
- 适用于所有的UltraLite版本
- 能够恢复出来表结构和数据
- 能够恢复自定义数据类型
- 能够恢复存储过程等对象的语法
- 能够导出到目标数据库
- 能够导出到SQL文件并生成导入脚本
- 支持多种字符集,包括:cp850、cp936、gb18030、utf8等
- 能够恢复未加密或者简单加密类型的数据
- 简单易用
- 限制:不支持AES加密的数据文件
SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍
Sybase SQL Anywhere数据库恢复工具ReadASADB适用场景
各种误操作:
- 误截断表(truncate table)
- 误删除表(drop table)
- 错误的where条件误删数据
- 误删除db或log文件
- 误删除表中的字段
Sybase SQL Anywhere数据库恢复工具ReadASADB的应用场景:
1.因为物理磁盘故障、操作系统、系统软件方面或者掉电等等原因导致的Sybase SQL Anywhere数据库无法打开的情况;
2.误操作,包括truncate table,drop table,不正确的where条件导致的误删除等;
Sybase SQL Anywhere无法打开时,比较常见的错误是:Assertion failed。
如:
1、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Checkpoint log: invalid bitmap page -- transaction rolled back
2、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Page number on page does not match page requested -- transaction rolled back
3、Internal database error *** ERROR *** Assertion failed:200502 (9.0.2.2451) Checksum failure on page 23 -- transaction rolled back
4、File is shorter than expected
5、Internal database error *** ERROR *** Assertion failed: 201116 Invalid free list index page found while processing checkpoint log -- transaction rolled back
6、*** ERROR *** Assertion failed: 51901 Page for requested record not a table page or record not present on page
7、*** ERROR *** Assertion failed: 201417 (7.0.4.3541) Invalid count or free space offset detected on a table page
8、Internal database error *** ERROR *** Assertion failed: 201425 (8.0.3.5594) Invalid count or free space offset detected on a free list page -- transaction rolled back.
9、Internal database error *** ERROR *** Assertion failed: 100702 (8.0.1.2600) Unable to modify indexes for a row referenced in rollback log -- transaction rolled back
Sybase ASE数据库恢复工具READSYBDEVICE:
一个不依赖数据库管理系统、直接从Sybase数据库设备文件上提取数据的业内领先的恢复工具!能够从损坏的Sybase ASE设备文件(.dat)上提取数据的非常规恢复工具。
Sybase ASE数据库恢复工具READSYBDEVICE的主要功能:
- 被勒索病毒加密数据文件及备份文件情况下的恢复;
- 系统崩溃只剩下数据文件的情况下的恢复,甚至数据库文件不存在而只有损坏的备份文件情况下的恢复;
- 因断电、硬盘坏道等造成数据库文件损坏情况下的恢复;
- delete数据恢复、误update数据恢复、误删除表(drop)恢复、误truncate表恢复 等;
- 各种Sybase内部系统表损坏、索引错误的修复;
- master数据库损坏而无法正常运行情况下的恢复;
- Sybase数据库被标记为可疑,不可用等情况的恢复;
- Sybase数据库中数据文件内部出现坏块情况下的恢复;
- Sybase数据库无数据文件但有日志文件的情况下的恢复;
- Sybase数据库只有数据文件无任何日志文件的情况下的恢复;
- Sybase数据文件被误删除情况下的碎片提取恢复;
- 磁盘阵列上的Sybase数据库被误格式化情况下的数据库恢复;
- 数据库sysobjects等系统表损坏无法正常应用情况下的恢复;
- Sybase数据库还原数据库出现失败情况下的恢复;
- Sybase数据库只剩下损坏的备份文件情况下的恢复。
Sybase ASE数据库恢复工具READSYBDEVICE支持的版本:
Sybase ASE 11.0.x,11.5.x,11.9.x,12.0.x,12.5.x,15.0.x,15.5.x,15.7.x,16.0.xSQL Server数据库恢复工具SQLRescue:
一个不依赖数据库管理系统、直接从SQL Server数据库文件上提取数据的业内领先的恢复工具!能够从损坏的SQL Server数据库文件(.mdf)上提取数据的非常规恢复工具。
SQL Server数据库恢复工具SQLRescue的主要功能:
- 系统崩溃只剩下数据文件的情况下的恢复,即无日志文件或者日志文件损坏情况下的恢复;
- 断电导致数据库文件损坏情况下的恢复;
- 硬盘坏道造成数据库损坏情况下的恢复;
- 数据文件内部存在坏页情况下的恢复;
- 企业管理器误删除数据表记录,管理软件误删除数据表记录的恢复;
- 并闩锁错误、格式化、误删除后导致软件不能使用的情况;
- 无法读取并闩锁页sysindexes失败情况下的修复;
- 数据文件被误删除情况下的碎片提取恢复;
- 系统表损坏、索引错误、误删除数据库表、删除记录的数据找回;
- master数据库损坏而无法正常运行情况下的恢复;
- 数据文件无法附加情况下的数据恢复;
- 数据库被标记为可疑,质疑,不可用等情况的恢复;
- 数据库sysobjects等系统表损坏情况下的恢复;
- 数据被误(drop、delete、truncate)删除表数据的恢复,误update后的数据恢复等;
- 还原时报一致性错误,错误823等情况下的数据恢复,各种错误提示的数据库文件修复;
- 数据库被误格式化等情况下的数据库恢复;
- 日志收缩造成数据库损坏情况下的恢复;
- 仅剩损坏的备份文件情况下的恢复。
SQL Server数据库恢复工具SQLRescue技术特点:
只要SQL Server数据库的数据文件存在,我们就有办法帮您从数据文件中找回重要数据。- 从数据文件中直接恢复数据
- 不能附加时直接恢复数据并生成新的数据库
- 系统表损坏的数据库修复
- 快速修复SQL 823错误、连接中断错误
SQL Server数据库恢复工具SQLRescue支持的版本:
Microsoft SQL Server 7.0, 2000, 2005, 2008, 2008R2, 2012, 2014, 2016, 2017,2019。+-------------------------------------华丽的分割线-------------------------------------------------------------------------