请教各位一个关于SYBASE键值的问题,本人上网不便,所以对要求不清楚的不能及时回复,抱歉,过几天才能来收答案和揭贴了.

李志林HZ 2002-12-10 07:39:13
一般来说,我们建的表有键值在系统表中对应着,请问各位有办法取得键值的位置吗?

我试验过在SYSCOLUMNS中,没找到,请各位帮忙,谢谢!
...全文
32 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
李志林HZ 2002-12-12
  • 打赏
  • 举报
回复
谢谢各位,试验成功后给分,谢谢各位的参与和帮助!
wanghai 2002-12-11
  • 打赏
  • 举报
回复
indid=0为表,1为页级锁表的聚簇索引,>1为DOL锁表的非聚簇或聚簇索引,如果是TEXT,IMAGE,LOB,则为255
status=2048为对主键的索引
status2=2为索引支持主键/唯一申明约束
wanghai 2002-12-11
  • 打赏
  • 举报
回复
主键的名字不一定以‘PK’开头,这是可以由用户定义的。
恩,不过按照规范应该是PK开头
SE1 2002-12-11
  • 打赏
  • 举报
回复
应该如此:
select name as PK_name -- 主键的名字
,object_name(id) as Table_name -- 相关表的名字
,keycnt as KeyCnt --涉及的列的数量
,key1 as Key1 --涉及的第一个列
,key2 as Key2 --涉及的第二个列(如果有的话)
,key3 as Key3 --涉及的第三个列(如果有的话)

from sysindexes
where indid > 0
and status2 & 2 = 2
and status & 2048 = 2048

to wanghai(汪海) :
主键的名字不一定以‘PK’开头,这是可以由用户定义的。
wanghai 2002-12-10
  • 打赏
  • 举报
回复
select name ,id from sysindexes where upper(name) like 'PK%'

2,598

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧