远程Sybase数据库技术支持,联系手机:13811580958,QQ:289965371!

 

随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
目前,原Sybase所有产品(包括:Adaptive Server Enterprise、Sybase IQ、Replication Server、PowerDesigner等)的官方手册仍然可以从http://infocenter.sybase.com/help/index.jsp进行浏览或下载。暂不清楚该网站http://infocenter.sybase.com/help/index.jsp何时会被完全迁移到SAP Support上!
Sybase官方手册英文版有html和pdf两种格式,而中文版手册只有pdf一种格式。为了国内Sybase用户更方便、快捷地搜索Sybase常见产品的官方手册内容,特将中文版Sybase官方手册转为html格式!
Sybase产品官方手册中文版的html格式所有内容的版权归SAP公司所有!本博客站长是Sybase数据库的铁杆粉丝!

如有Sybase数据库技术问题需要咨询,请联系我!

  QQ :289965371 点击这里给我发消息
  Email:

以下官方手册为ASE 15.7 ESD#2中文版:

  1. 新增功能公告 适用于 Windows、Linux 和 UNIX 的 Open Server 15.7 和 SDK 15.7
  2. 新增功能摘要
  3. 新增功能指南
  4. ASE 15.7 发行公告
  5. 配置指南(windows)
  6. 安装指南(windows)
  7. 参考手册:构件块
  8. 参考手册:命令
  9. 参考手册:过程
  10. 参考手册:表
  11. Transact-SQL® 用户指南
  12. 系统管理指南,卷 1
  13. 系统管理指南,卷 2
  14. 性能和调优系列:基础知识
  15. 性能和调优系列:锁定和并发控制
  16. 性能和调优系列:监控表
  17. 性能和调优系列:物理数据库调优
  18. 性能和调优系列:查询处理和抽象计划
  19. 性能和调优系列:使用 sp_sysmon 监控 Adaptive Server
  20. 性能和调优系列:利用统计分析改进性能
  21. 程序员参考 jConnect for JDBC 7.0.7
  22. Adaptive Server Enterprise 中的 Java
  23. 组件集成服务用户指南
  24. Ribo 用户指南
  25. 内存数据库用户指南
  26. Sybase Control Center for Adaptive Server® Enterprise
  27. 安全性管理指南
  28. 实用程序指南

 


< 上一个 | 内容 | 下一步 >

revoke

说明 撤消用户、角色或组的权限。

语法 撤消访问数据库对象的权限:

revoke [grant option for]

{all [privileges] | permission_list} on {table_name [(column_list)]

| view_name [(column_list)]

| stored_procedure_name | function_name

| keyname}

[with { pred_name | {all |no} predicates}] from {public | name_list | role_list} [cascade]

[granted by grantor]

撤消选择内置函数的权限:

revoke select

on [builtin] builtin

from {name_list | role_list} [granted by grantor]

撤消系统特权:

revoke {all [privileges] | privilege_list} from {public | name_list | role_list} [granted by grantor]

撤消运行 set proxy 的权限

revoke set proxy

from {public | name_list | role_list} [granted by grantor]

撤消 dbcc 特权:

revoke {dbcc_privilege [on database]

[, dbcc_privilege [on database], ...]} from {user_list | role_list}

[granted by grantor]

撤消 public 的缺省权限:

revoke default permissions on system tables


参数 all


指派访问数据库对象的权限时 (请参见 “撤消访问数据库对象的权 限”的语法), all 指定撤消所有适用于指定对象的权限 (decrypt 权限 除外)。所有对象所有者都可以使用含有对象名的 revoke all 撤消各自 对象的权限。 decrypt 权限必须单独撤消。

未启用细化权限时,系统管理员或数据库所有者可以使用 revoke all 撤 消创建数据库对象的权限 (请参见 “撤消系统特权”的语法)。由 系统管理员使用时, revoke all 将撤消所有 create 特权 (create databasecreate defaultcreate procedurecreate rulecreate tablecreate function create view)。数据库所有者使用 revoke all 或在 master 数据库外执行 revoke all 时, Adaptive Server 将撤消除 create database 之外的所有 create 特权,并显示一条信息性消息。

当启用细化权限时,不支持使用 revoke all 撤消所有 create 特权。有关 详细信息,请参见 《安全性管理指南》中的 “使用细化权限”。

不能将 all 用于包含 where 子句的 revoke 语句。

permission_list 是要撤消的权限的列表。如果列出的权限不止一个,可用逗号将它们 隔开。下表说明每种类型的对象可以授予和撤消的访问权限。

image

对象 permission_list 可包括

selectinsertdeleteupdate referencesupdate statisticsdelete statisticstruncate tabledecryptidentity_insert *identity_update *

视图 selectinsertdeleteupdatedecryptidentity_insert *

identity_update *

selectupdatereferencesdecrypt

列名可以在 permission_list column_list 中指定。

存储过程 execute

加密密钥 select

函数 execute *


image

注释 标有星号 (*) 的权限仅在启用细化权限时才能授予。

image


builtin

是内置函数。通过指定内置函数,可将表和同名的可撤消内置函数区 分开来。这些函数是 set_appcontextget_appcontextlist_appcontextauthmech rm_appcontext


privilege_list 是可以撤消的一组系统特权。系统特权包括服务器范围和数据库范围 特权。请参见 1-21 1-22 查看可以撤消的系统特权的列表。另 请参见 “用法”部分了解有关如何撤消系统特权的详细信息。使用 逗号分隔多个命令。

table_name

是您在撤消其权限的表的名称。该表必须在当前数据库中。

column_list 是由逗号分隔的该权限的适用于列的列表。如果指定了列,则只能撤 消 selectreferencedecrypt update 权限。

view_name

是您在撤消其权限的视图的名称。该视图必须位于当前数据库中。

stored _procedure_name 是您在撤消其权限的存储过程的名称。该存储过程必须位于当前数据 库中。

function_name

是您要撤消其权限的函数的名称。此函数必须存在于当前数据库中。

keyname

是您在撤消其权限的密钥的名称。加密密钥必须位于当前数据库中。对 于每个 revoke 语句只能列出一个对象。只能撤消对密钥的 select 权限。

[with {pred_name | {all | no} predicates}] 可以后跟命名的谓词、双重关键字 all predicates 或双重关键字 no predicates

pred_name - 您要撤消的带谓词授权的名称。 sp_helprotect 显示用 于标识行过滤授权的谓词名称。

no predicates – 指示 Adaptive Server 仅删除命名被授予者的给定 访问权限的不带谓词授权。

no predicates – 指示 Adaptive Server 仅删除命名被授予者的给定 访问权限的所有带谓词授权。保留所有不带谓词的授权。

如果省略 with 子句,则带谓词和不带谓词的 grant 都会被撤消 (缺省 行为)。

public

指所有用户。对于对象访问权限, public 不包括对象所有者。对于对 象创建权限或 set proxy 授权, public 不包括数据库所有者。不能使用 with grant option 为 “public”或者其它组或角色授予权限。


name_list

是由逗号分隔的用户名和组名列表。

set proxy

撤消用户充当另一用户的特权。

grant option for

撤消 with grant option 权限,以便 name_list 中指定的用户不能再将指定 的权限授予其他用户。如果这些用户已将权限授予另一些用户,则必 须使用 cascade 选项撤消其权限。 name_list 中指定的用户保留对象访 问权限,但不能再将访问权限授予其他用户。grant option for 仅适用于 对象访问权限,而不适用于对象创建权限。

cascade

从撤消者早先授予了权限的所有用户撤消指定的对象访问权限。仅适 用于对象访问权限,不适用于对象创建权限。不带 grant option for 选 项使用 revoke 时,由撤消者授予给其他用户的权限也被撤消:级联自 动发生。

granted by grantor

指示撤消由 grantor 而非执行 revoke 命令的用户所授予的权限或特权。

grantor

当前数据库中的有效用户名。

dbcc_privilege

您要撤消的 dbcc 特权的名称。它不能是一个变量。 1-21 1-22

列出了 dbcc 特权。

database

是您正在撤消其权限的数据库的名称。它与特定于数据库的 dbcc 特 权一起使用,仅对目标数据库撤消权限。被撤消者必须是目标数据库 中的有效用户。 database 应符合标识符的规则,而且不能是变量。

如果在同一命令中存在多个撤消的操作,则 database 必须是唯一的。

user_list

是您在撤消其权限的用户的列表,而且不能是变量。

role_list

是您在撤消其权限的系统角色或用户定义角色的名称列表,而且不能 是变量。


image

注释 不能向 public 或组授予或撤消 dbcc 特权。

image


all [privileges]

使用 all all privileges 可撤消所有授予和拒绝的特权。


column_list

如果与 with pred_name 一起使用,则带谓词的行级访问权限会从命名 列中删除。如果仍存在针对该行级特权引用的其它列,则对于减少的 列列表,特权及其相关的命名谓词仍位于 sysprotects 中。

系统表的缺省权限

指定撤消 547 页的 “撤消系统表的缺省权限”中列出的系统表的 缺省权限。

示例 示例 1 撤消 Mary 和 “sales”组对表 titles insert delete 权限:

revoke insert, delete on titles

from mary, sales

示例 2 撤消“public”(包括所有用户)对 get_appcontext 函数的 select 权 限:

revoke select on builtin get_appcontext from public

将其与下列命令比较,如果存在一个名为 get_appcontext 的表,下列命 令撤消对该表的 select 权限:

revoke select on get_appcontext from public

示例 3 有两种方法可以撤消 “public”对 titles 表的 price advance 列的

update 权限:

revoke update

on titles (price, advance) from public

或:

revoke update (price, advance) on titles

from public

示例 4 撤消 Mary John 使用 create database create table 命令的权限。 因为正在撤消 create database 权限,所以此命令只能在 master 数据库中 执行。仅撤消 Mary John master 数据库的 create table 权限:

revoke create database, create table from mary, john

示例 5 撤消 Harry Billy 执行 set proxy set session authorization 从而可 以在服务器上充当另一个用户的权限:

revoke set proxy from harry, billy

示例 6 撤消具有 sso_role 的用户执行 set proxy set session authorization 的 权限:


revoke set session authorization from sso_role

示例 7 撤消 Mary 在当前数据库中的所有对象创建权限(create encryption key create trigger 除外):

revoke all from mary

示例 8 撤消 Mary titles 表的所有对象访问权限 (decrypt 权限除外):

revoke all on titles from mary

示例 9 有两种方式撤消 Tom 在其它表 (引用 titles 表的 price advance

列的表)上创建参照完整性约束的权限:

revoke references

on titles (price, advance) from tom

或:

revoke references (price, advance) on titles

from tom

示例 10 撤消所有被授予 “operator”角色的用户执行 new_sproc 的权限:

revoke execute on new_sproc from oper_role

示例 11 撤消 John 的以下权限:授予其他用户对 authors 表的 insert update

delete 权限。同样撤消其他用户的 John 已授予的任何此类权限:

revoke grant option for insert, update, delete on authors

from john cascade

示例 12 撤消 Frank 执行 dbcc 的特权:

revoke dbcc checkdb on all from frank

示例 13 撤消 Harry authors 表上的 truncate table update statistics 特权:

revoke truncate table on authors from harry revoke update statistics on authors from harry

用户 Billy Harry 不能再在 authors 上运行这些命令。

示例 14 撤消所有具有 oper_role 的用户的 truncate tableupdate delete statistics 特权:

revoke truncate table on authors from oper_role revoke update statistics on authors from oper_role revoke delete statistics on authors from oper_role


示例 15 撤消 public decrypt 权限:

revoke decrypt on customer from public

示例 16 撤消用户 joe create encryption key 权限:

revoke create encryption key from joe

示例 17 撤消数据库所有者对 ssn_key select 权限。

revoke select on ssn_key from dbo

示例 18 以下示例假定已向 user1 授予以下权限,以便从表 t1 中进行选 择:

无条件授权,可在所有行中查看 t1.col1 t1.col4

grant select on t1 (col1, col4) to user1

行过滤授权,在选择 t1.col2 t1.col3 时适用:

grant select on t1 (col2, col3) where col1 = 1 as pred1

to user1

删除对 t1.col2 的、带有 pred1 select 权限:

revoke select on t1 (col2) with pred1 from user1


image

注释 执行此 revoke 命令后, user1 选择 t1.col3 时, pred1 仍适用。

image


如果授予者发出了以下命令之一,则 user1 t1 的所有使用 pred1 的权 限都将被删除:

revoke select on t1 (col2, col3) with pred1 from user1

revoke select on t1 with pred1

示例 19 在上一示例中所描述的授权之后,以下代码将删除对 t1.col2 t1.col3 的带谓词 pred1 的授权 (all predicates 将撤消给定访问权限和被授 予者的所有行过滤带谓词授权):

revoke select on t1 with all predicates from user1

示例 20 删除 user1 t1 的所有 select 访问权限;即,针对 t1 上的 select

访问,向 user1 授予的 t1 上的所有带谓词和不带谓词的授权:


revoke select on t1 from user1

示例 21 仅应用于不带谓词的授权:

revoke select on t1 with no predicates

示例 22 撤消 mary john 授予的对 mary.books 表的 select 权限:

revoke select on mary.books from john granted by mary

示例 23 撤消用户 smith 的系统特权 manage any login

use master

revoke manage any login from smith

用法 有关权限的详细信息,请参见 grant 命令。

只能撤消当前数据库中对象的权限。

只能撤消您未使用 granted by grantor 选项授予的权限或特权。如果 使用了 granted by grantor 选项,您可以撤消由其他用户授予的权限 或特权。

grant revoke 命令区分先后顺序。发生冲突时,最近发出的命令生 效。但带谓词的特权的授予和撤消则例外。请参见 《安全性管理指 南》中的 “Adaptive Server 如何将带谓词的特权保存在 sysprotects 中”

revoke 语法中,可以用单词 to 替代 from

如果在 revoke 语句中没有指定 grant option for,则 with grant option 权 限与指定的对象访问权限都将从用户撤消。另外,如果用户已授予 了任何其他用户指定的权限,所有那些权限都会被撤消。也就是 说, revoke 级联发生。

不同的授予者可为用户、组或角色授予相同的特权或权限。在此情 况下,表示同一特权或权限的多个相关授权的 sysprotects 将具有多 个行。如果稍后撤消一个或多个授权,则只要还有一个授权未撤 消,用户、组或角色就仍会具有特权或权限。

grant 语句为每个接受此权限的用户、组或角色在 sysprotects 系统表 中添加一行。如果随后对用户或组的该权限执行 revoke 命令, Adaptive Server 会从 sysprotects 中删除相应的行。如果仅撤消了选 定的组成员的该权限,但并没有撤消获得此授权的整个组的该权 限, Adaptive Server 保留其初始行并为撤消操作添加一个新行。


在缺省情况下,授予用户发出 create trigger 的权限。当撤消用户创 建触发器的权限时,会在 sysprotects 表中为该用户添加一个撤消 行。若要授予发出 create trigger 的权限,必须发出两个授权命令。 第一个命令从 sysprotects 中删除撤消行;第二个命令插入一个授予 行。如果撤消了创建触发器的权限,则用户甚至无法在自己拥有的 表上创建触发器。撤消用户创建触发器的权限只影响从中发出 revoke 命令的数据库。

使用 cascade 选项

revoke grant option for 撤消用户授予其他用户指定权限的能力,但不撤消 该用户的此权限。如果用户已将此权限授予其他用户,则必须使用 cascade 选项,否则,会收到错误消息并且 revoke 失败。

例如,假定要撤消用户 Bob titles 上的 with grant option 权限,使用这个 语句:

revoke grant option for select on titles

from bob cascade

如果 Bob 没有将此权限授予其他用户,此命令会撤消他授予的能 力,但他仍然具有对 titles 表的 select 权限。

如果 Bob 已将此权限授予其他用户,则必须使用 cascade 选项。如 果不使用此选项,您将收到错误消息并且 revoke 失败。 cascade 撤 消已被 Bob 授予 select 权限的所有用户的该权限,同时撤消他们将 其授予其他人的能力。

不能使用带有 cascade 选项的 revoke 命令来撤消由表所有者授予的权限。 例如,表的所有者 (UserA) 可以用如下语句将权限授予另一用户 (UserB)

create table T1 (...)

grant select on T1 to UserB

不过,系统管理员不能用带有 cascade 选项的 revoke 特权命令用如下语 句撤消 UserB 的特权:

revoke select on T1 from UserA cascade

该语句撤消了表所有者的 select 特权,但并不撤消 UserB 的那些特权。 缺省情况下,会隐式撤消表所有者以外用户的所有数据操作语言 (DML)

操作 (启用 restricted decrypt permission 时的解密权限除外。请参见 User Guide for Encrypted Columns (《加密列用户指南》))。因为 sysprotects 表中不包含指示表所有者已授权而后又撤消了特权的记录,所以 cascade 选项未被调用。

必须明确地撤消 UserB select 特权。


使用 granted by

不允许使用 granted by 来撤消带谓词的特权。

不要求 grantor 具有执行 grant 命令的权限。

将撤消授予者 (由 sysprotects.grantor 表示)而非命令执行者所授予 的权限。

使用 granted by 参数无需启用 enable granular permissions

对于通过 with grant 选项收到对象的 grant 权限的用户,其不能发出

granted by 参数。所有其他用户均可发出 granted by 参数。

例如, John 通过 with grant 选项获得 mary 的表的权限。当他试图使 用 granted by 选项发出 revoke 语句时,将会返回一个错误。

Mary

grant select on mary.books to john with grant option

Mary

grant select on mary.books to smith

John

revoke select on mary.books from smith granted by mary

撤消 set proxy set session authorization

要撤消 set proxy set session authorization,您必须处于 master 数据 库中。

set proxy set session authorization 基本相同,只有一点区别:set session authorization 遵循 SQL 标准。要了解只采用 SQL 标准的命令 和语法,请使用 set session authorization

revoke all 包括 set proxy set session authorization 权限。

数据库用户组

数据库用户组允许一次对多个用户 grant revoke 权限。用户始终是 缺省组和 “public”的成员,还可以是一个其它组的成员。 Adaptive Server 安装脚本为 “public”指定了一组权限。

使用 sp_addgroup 创建组,使用 sp_dropgroup 删除组。使用 sp_adduser 向组中添加新用户。使用 sp_changegroup 更改用户的组 成员资格。若要显示组成员,请使用 sp_helpgroup


撤消系统表的缺省权限

revokes default permissions on all system tables from public.” 从任何数据库发出该命令时均可撤消其缺省权限的系统表有:

sysalternates

sysattributes

syscolumns

syscomments

sysconstraints

sysdepends

sysindexes

sysjars

syskeys

syslogs

sysobjects

syspartitions

sysprocedures

sysprotects

sysqueryplans

sysreferences

sysroles

syssegments

sysstatistics

systabstats

systhresholds

systypes

sysusermessages

sysusers

sysxtypes


master 数据库发出此命令时可撤消其缺省权限的系统表有:

sysdatabases

sysdevices

syslocks

sysmessages

sysprocesses

systransactions

sysusages

sysconfigures

syscurconfigs

syslanguages

syscharsets

sysservers

systimeranges

sysresourcelimits

syslogins

sysremotelogins


撤消 update statisticsdelete statistics truncate table 的权限

Adaptive Server 允许您撤消用户、角色和组对 update statisticsdelete statistics truncate table 命令的权限。通过将 update statisticsdelete statistics truncate table 添加到一个存储过程,然后将此过程的执行权限 授予用户或角色,表所有者也可以通过隐式 grant 提供权限。

不能在列级撤消 update statistics 的权限。必须具有 sso_role 才能在 sysrolessyssrvroles sysloginroles 安全表上运行 update statistics delete statistics

缺省情况下,数据库所有者有权在除 sysrolessyssrvroles sysloginroles 之外的系统表上运行 update statistics delete statistics,并且可以将此特 权转交给其他用户。


还可以发出 grant all 授予 update statisticsdelete statistics truncate table

的权限。


image

注释 撤消用户执行 update statistics 的权限后,他们也就丧失了执行此命 令的各种变化形式的权限,如 update all statisticsupdate partition statisticsupdate index statisticsupdate statistics table 等。例如,下面的命令撤消 Billy authors 表上运行 update statistics 的各种变化形式的权限:

revoke update statistics on authors to billy

如果撤消用户执行 update statistics 的权限,也就撤消了他们执行此命令 的各种变化形式的能力。

image


不能单独撤消执行 update statistics 的变化形式 (例如, update index statistics)的权限。也就是说,不能发出以下命令:

revoke update all statistics from harry

不能在列级授予和撤消 delete statistics 权限。请参见 401 页的“ grant” 的 “用法”部分。

在集群环境中撤消

如果尝试在本地临时数据库中撤消用户定义的角色的权限,则 revoke 将 失败。

标准 符合 ANSI SQL 的级别Transact-SQL 扩展。

权限 revoke 函数的权限检查因您的细化权限设置而异。


image

细化权限已启用 在启用细化权限的情况下, revoke 命令通常可由具有下列特权管理特权之一 的用户执行,具体视要撤消的特权或权限而定。

对于服务器范围特权,您必须是具有 manage server permissions 特权或 manage security permissions 特权的用户。

对于数据库范围特权,您必须是具有 manage database permissions 特权的用户。

对于对象特权,您必须是对象所有者或具有 manage any object permission 特权 的用户。

要执行 revoke default,您必须是数据库所有者或对数据库具有 own database 特 权的用户。

有关详细信息,请参见 1-23 “管理方 (启用细化权限时)”一列。

细化权限已禁用 在启用细化权限的情况下:

命令执行 - 只有系统管理员可以撤消 create database 权限,且只能从 master 数 据库撤消。只有系统安全员可以撤消 create trigger create encryption key 权限。

数据库一致性检查 – 只有系统管理员可以运行 revoke dbcc 命令。数据库所有 者不能运行 revoke dbcc

数据库对象访问 – 缺省情况下将数据库对象撤消权限授予对象所有者。对象 所有者可撤消其他用户对其自己的数据库的权限。

函数 - 只有系统管理员可以撤消内置函数的权限。

代理和会话授权 – 只有系统安全员可以撤消 set proxy set session authorization 权限,且只能从 master 数据库撤消。

角色 - 只能从 master 数据库撤消角色。只有系统安全员可以撤消用户或角色 的 sso_role 或用户定义的角色。只有系统管理员可以撤消用户或角色的 oper_rolesa_role。只有同时拥有 sa_role sso_role 的用户可以撤消包含 sa_role 的角色。

- 数据库所有者可以撤消系统表的缺省权限。表所有者和系统安全员可撤 消对表或表中一组列的 decrypt 权限。

缺省权限 - 数据库所有者或具有 sa_role 角色的登录用户可以撤消缺省权限。


审计 sysaudits event extrainfo 列中的值如下:


事件

审计选项

审计的命令或访问权限

extrainfo 中的信息

47

revoke

revoke

角色 – 当前活动角色

关键字或选项 revoke 语句的完整命令文本

先前值 NULL

当前值 NULL

其它信息 NULL

代理信息 set proxy 有效时的初始登录名

另请参见 命令 grant, setuser, set.

函数 proc_role .


系统过程 sp_activeroles, sp_adduser, sp_changedbowner, sp_changegroup, sp_displaylogin, sp_displayroles, sp_dropgroup, sp_dropuser, sp_helpgroup, sp_helprotect, sp_helpuser, sp_modifylogin, sp_role.




--------------------------------------华丽的分割线-------------------------------------------------------------------------
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具:ReadASADB。
此工具支持ASA v5.0,v6.0,v7.0,v8.0,v9.0,v10.0,v11.0,v12.0等版本。
恢复Sybase SQL Anywhere的工具在国内应该算首创。

ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具

  1. 适用于所有的SQL Anywhere版本    包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x
  2. 适用于所有的UltraLite版本
  3. 能够恢复出来表结构和数据
  4. 能够恢复自定义数据类型
  5. 能够恢复存储过程等对象的语法
  6. 能够导出到目标数据库
  7. 能够导出到SQL文件并生成导入脚本
  8. 支持多种字符集  包括:cp850、cp936、gb18030、utf8等
  9. 能够恢复未加密或者简单加密类型的数据
  10. 简单易用
  11. 限制:不支持AES加密的数据文件
请参考:研发成功了从Sybase SQL Anywhere的DB文件上恢复数据的工具
            SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍

ReadASADB适用场景

各种误操作:

  1. 误截断表(truncate table)
  2. 误删除表(drop table)
  3. 错误的where条件误删数据
  4. 误删除db或log文件
  5. 误删除表中的字段

本工具的应用场景:

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等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------