youwei 发表于 2011-03-20 00:03

关于,代理表的问题!

准备,用BCP方式进行表记录的备份,但是库里面有许多代理表
请教如何排除代理表,只对本地的表进行备份呢?
在一个库里面,代理表和本地表如何区分呢!!?
谢谢!

Eisen 发表于 2011-03-21 09:08

select name from sysobjects where type='U' and sysstat2&2048<>2048--本地表

andkylee 发表于 2011-03-21 09:20

回复 2# Eisen


    恩。 Eisen写过一个提取ddl语法的工具。对这些自然很熟悉。

Eisen 发表于 2011-03-21 09:33

不敢自大……这个是chenfeng版主告诉我的。

lrx 发表于 2011-03-23 13:19

附加資訊:

list proxy table

select object_cinfo, char_value from sysattributes where char_value like '%.%.%.%'

youwei 发表于 2011-03-23 20:57

呵呵,小弟,终于找到如何区分代理表和本地表的方法了。。。谢谢各位!

select name from sysobjects where type='U' and sysstat2&2048<>2048--本地表
这个运算符,是二进制的与的功能吗?小弟在库里面查了一下:sysstat2 这个字段有以下几个值
sysstat2   
-----------
      73728
      73736
      73792
      73800
      74240
      74248
      74312
"sysstat2"这个字段的这些值,是做什么用的呢?还有其它的意思吗?
谢谢!

Eisen 发表于 2011-03-24 10:21

十进制十六进制状态
1 0x1 表具有参照约束。
2 0x2 表具有外键约束。
4 0x4 表具有多个检查约束。
8 0x8 表具有主键约束。
16 0x10 存储过程只能在链式事务模式下执行。
32 0x20 存储过程可以在任何事务模式下执行。
64 0x40 表具有 IDENTITY 字段。
128 0x80 尚未使用。
256 0x100 尚未使用。
512 0x200 表中不包含可变长度的列。
1024 0x400 表是远程的。
2048 0x800 表是用 existing 关键字创建的代理表。
4096 0x1000 尚未使用。
8192 0x2000 表使用所有页锁定方案。
16384 0x4000 表使用数据页锁定方案。
32768 0x8000 表使用数据行锁定方案。
65536 0x10000 表是在 11.9 或更高版本的服务器中创建的。
131072 0x20000 表具有聚簇索引。
262144 0x40000 对象表示一个嵌入式 SQL 过程。
524288 0x80000 尚未使用。
16777216 0x1000000 对象表示一条访问规则。
33554432 0x2000000 对象表示 SQLJ 存储过程。
67108864 0x4000000 对象表示 OR 访问规则。
1073741824 0x40000000 表包含一个或多个基于函数的索引。
2147483648 0x80000000 对象具有扩展索引。
页: [1]
查看完整版本: 关于,代理表的问题!