- 1、本文档共73页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Sybae數据库使用学习经验总结
Sybae数据库使用和存储过程编写总结
张浩博客
sql语句部分
新型企业级智能数据管理系统Sybase ASE 12.5(Adaptive Server Enterprise)
** 17260, Cant run %1! from within a transaction.
中间德 %1 什么意思?
在创建存储过程 CREAT之前编写存储过程德 错误编号说明
charindex(sa_role, show_role())
查看在show_role() 这个串中的sa_role在这个串中是第几个 字符
begin
/* 17230, You must be the System Administrator (SA) or the Database Owner (dbo) to execute this procedure. */
raiserror 17230
return 2
end
其中的raiserror是什么意思
@@trancount
这个是事务嵌套计数,它的值跟踪记录了事务嵌套的级次。他在第一个begin 突然语句后值为1。
set chained off
这是事务有关的语句
set? ?chained? ?on之后,需要显式的commit;
默认的是off,SQL92标准默认是on.
如果是on,那么会为一个SQL语句块隐式开启一个事务。
如果是off,除非你使用了begin tran,它不会主动为你开启一个事务。
SET TRANSACTION ISOLATION LEVEL 1
设置事务的隔离1级水平
存储过程的递归调用
在存储过程内部实现了游标的编写,在游标中用EXEC 执行存储过程本身实现递归调用存储过程本身
存储过程的调用
exec @retstat = sp_ha_check_certified sp_adduser, @HA_CERTIFIED
Sybase命令
1.disk mirror 创建在主设备发生故障时立即接替运行得软件镜像。
2.disk refit 通过sysdevices中的信息重建master数据库的sysusages和sysdatabases系统表
3.disk reinit 重建master数据库的sysdevices系统表。将disk reinit作为过程的一部分使用,以便恢复master数据库。
4.disk remirror 在磁盘镜像因镜像设备故障而停止或者被disk unmirror命令临时禁用后重新启动它。
5.disk resize 动态添加Adaptive Server使用的设备的大小。
例子:disk resize
Name = “test_dev”
Size = “10M”
6.disk unmirror 挂起用disk mirror命令启动的磁盘镜像,以允许硬件维护或硬件设备的更改。
7.drop database 删除一个或多个数据库。
8.drop default 删除用户定义的缺省值。
例子 :删除数据库中用户定义的缺省datedefault
Drop default datedefault
9.drop function 删除SQL函数
10.drop index 从当前数据库的表中删除索引。
例子:从authors表中删除au_id_ind
Drop index authors. au_id_ind
11.drop procedure 删除存储过程。
例子:删除存储过程shoind
Drop procedure shoind
12.drop role删除用户定义角色
13.drop rule 删除用户定义的规则。
14.drop table 从数据库中删除表定义及其所有的数据、索引、触发器和权限。
15.drop trigger 删除触发器。
16.drop view 从当前数据库中删除一个或多个视图。
日志空间满,引起无法给表添加新字段,日志满问题,
今天给一张表添加新字段,怎么也添加不上去,后来用sql语句写,看了报错信息才知道是日志空间满了。所以收集了一些资料,如下:?????????SYBASE ASE的每一个数据库,无论是系统数据库(master,model, sybsystemprocs, tempdb),还是用户数据库,都有自己的transaction log,每个库都有syslogs表。Log记录用户对数据库修改的操作,所以如果不用命令清除, log会一直增长直至占满空间。清除log可用dump transaction 命令;或者开放数据库选项trunc log on chkpt,数据库会每隔一段间隔自动清除log。管理好数据库log是
文档评论(0)