SDE_column_registry 表管理所有注册列。

警告:
如果使用 SQL 界面更改列定义,SDE_column_registry 表中的记录将不会更新。这可能导致之后的任何数据导出失败。

 SQL Server数据类型与sde_type对照表:

SQLServer类型 sde_type column_size decimal_diits
nvarcahr(50)  14 50 0
int  2 10 NULL
decimal(15,2) 4 15 2
datetime 7 0 NULL

 

 

 

 

 

 

 

如果在数据库中修改了字段的类型或长度,必须同时修改表SDE_column_registry,否则arcmap数据显示会不正确。

 

例如:

在sqlsever设计器中将表M_DWZY_MLCG_DCGX的FW_DM字段长度由原来20改为50。

--修改字段长度

alter table M_DWZY_MLCG_DCGX
alter column FW_DM varchar(50);

update SDE_column_registry set column_size=50

where table_name='M_DWZY_MLCG_DCGX' and column_name='FW_DM';

 精度型: [Numeric](10,1)

 

将面积改为4位小数,蓄积改为1位小数

update SDE_column_registry
set sde_type=4,column_size=10,decimal_digits=4
where table_name='XBM' and column_name='D_MJ'

update SDE_column_registry
set sde_type=4,column_size=10,decimal_digits=1
where table_name='XBM' and column_name='I_XBXJ'

 

 

access数据库修改字段长度:

ALTER TABLE LBM ALTER COLUMN C_LB Text(15)

双精度:float  (Arccatalog对应double)

单精度:  real  (Arccatalog对应float)