程序员人生 网站导航

SYBASE命令情况问题记录

栏目:sybase时间:2014-03-09 02:30:51

★ 检查出带自增长列的表.
SELECT name FROM sysobjects where id in (
select  id from   syscolumns  where status=128 )

★ 字符串长度判断
SELECT  datalength('abcd')   =4

★ 反向生成脚本
Sybase Central DDL 出脚本无法创建 sybase 12.0 为例
 用打开脚本方式 查看 有"紫底黄符"的特殊符号, 造成相邻2个单词连写, 用空格分开即可, 或者直接拷贝出 "打开脚本"方式下的内容创建即可.

★  SYBASE 12.5 环境下时间邮戳 反复报错的问题
00:00000:00001:2006/09/04 07:23:38.35 server  Error: 3474, Severity: 21, State: 1
00:00000:00001:2006/09/04 07:23:38.35 server  During redo the page timestamp value is less than old timestamp from log. Page #=2032, object id = 5, page timestamp=0000 00007bd3. Log old timestamp=0000 0011cc10.
这个实在无法搞定, 表轮番损坏, 软件 硬件 全都查过, BCP 重新倒数据 多次,SYBASE 也重新安装过, 硬件也更换,升级了.  最后的结论
可能IBM X260 + SYBASE 12.5   这2个"人" 实在过不到一起.  最后方案  IBM X260+11.92

SYBASE 12.5 这个版本开始需要人工来配置高速缓存,可能它的配置和IBM X260对系统缓存管理有冲突? 还有就是客户购买这个机器的时候
是刚推出的时候. 也许内部不够完善?
 

★ SYBASE 11.92 环境下  有时候做表统计无法通过  需要打补丁解决, 补丁前后版本号如下
Adaptive Server Enterprise/11.9.2/1031/P/NT (IX86)/OS 3.51,4.0/FBU/Fri Aug 14 01:42:41 1998                                 
                                                                                                                           
Adaptive Server Enterprise/11.9.2.6/1290/P/EBF 10489 ESD1/NT (IX86)/OS 3.51,4.0/FBU/Mon Jul 15 02:52:37 2002
补丁可联系作者 :)
 

★  重新导了系统之后  发现大多存储过程不能用  提示:
 A user transaction is already in progress.
 SETUSER command not allowde within multi-statement transaction.

那是因为 过程生成有错误 ENDGO 连写了   批量替换中 去掉了 go
这样后面的语句 SETUSER
  和 go 写到了存储过程里面.
照成过程错误. 修正即可.

 

本文出自“L&J Blog”

,,
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐