现在的位置: 首页 > 综合 > 正文

sde

2017年12月19日 ⁄ 综合 ⁄ 共 17078字 ⁄ 字号 评论关闭
CREATE TABLE [sde].[HM_V2](
    [OBJECTID] [int] NOT NULL,
    [ID] [int] NULL,
    [CD] [numeric](19, 8) NULL,
    [HG] [numeric](19, 8) NULL,
    [DP_AS] [numeric](19, 8) NULL,
    [CU] [numeric](19, 8) NULL,
    [PB] [numeric](19, 8) NULL,
    [CR] [numeric](19, 8) NULL,
    [ZN] [numeric](19, 8) NULL,
    [NI] [numeric](19, 8) NULL,
    [HM_TIME] [datetime] NULL,
    [HM_NAME] [nvarchar](50) NULL,
    [USER_NAME] [nvarchar](50) NULL,
    [Shape] [int] NULL
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER [sc_del_casc_4]
on [sde].[HM_V2] for delete, update
 as
begin
declare @rowcount int
select @rowcount = @@rowcount
if @rowcount = 0
return
 SET NOCOUNT ON
if update(Shape) 
begin
declare @shape_id  int
select @shape_id = Shape from inserted
if (@shape_id IS NULL)
begin
delete SQLSDE.SDE.f4 from deleted d, SQLSDE.SDE.f4 f where d.Shape = f.fid
 delete SQLSDE.SDE.s4 from deleted d, SQLSDE.SDE.s4 s where d.Shape = s.sp_fid
 end 
 else if (select count(*) from deleted where Shape is not null and Shape != @shape_id) > 0
begin
  RAISERROR ('Cannot update spatial column value.',16,-1)
  ROLLBACK
end
return
end     
if (select count(*) from inserted) > 0 
return
delete SQLSDE.SDE.f4 from deleted d, SQLSDE.SDE.f4 f  where d.Shape = f.fid
 delete SQLSDE.SDE.s4 from deleted d, SQLSDE.SDE.s4 s  where d.Shape = s.sp_fid  end
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER [sp_col_ins_4]
 on [sde].[HM_V2] for insert
 as if @@rowcount = 0
 return
 if (select count(*) from HM_V2 , inserted where HM_V2.Shape = inserted.Shape) > 1
 RAISERROR ('Duplicate key in Shape column.',16,-1)
 return
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_get_version_access]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
BEGIN
execute dbo.sp_executesql @statement = N'CREATE FUNCTION [sde].[SDE_get_version_access] (
@status INTEGER,
@version_owner NVARCHAR (128))
RETURNS CHAR(1)
BEGIN
--This is a private support function for SDE versioned views.
-- Get the current login & user name
DECLARE @user      NVARCHAR (128)
DECLARE @protected CHAR (1)
DECLARE @is_dba INTEGER
DECLARE @delimiter INTEGER
SELECT @user = user_name()
SET @delimiter = PATINDEX(''"%'', @version_owner)
IF @delimiter > 0
BEGIN
 SET @user = N''"'' + user_name() + N''"''
END
SET @is_dba = sqlsde.sde.SDE_is_user_sde_dba ()
SET @status = @status - floor (@status / 4) * 4
IF @status = 0 -- private version
BEGIN
  IF ((@is_dba = 0) AND (@user <> @version_owner))
    SET @protected = ''2'' -- no permission
  ELSE
    SET @protected = ''0''; -- full permission
END
ELSE IF @status = 2 -- protected version
BEGIN
  IF ((@is_dba = 0) AND (@user <> @version_owner))
    SET @protected = ''1'' -- read only permission
  ELSE
    SET @protected = ''0'' -- full permission
END
ELSE
  SET @protected = ''0'' -- must be a public version
RETURN @protected
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[HM_POLLUTION_LEVEL]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[HM_POLLUTION_LEVEL](
    [OBJECTID] [numeric](18, 0) NOT NULL,
    [CD_LEVEL] [numeric](10, 0) NOT NULL,
    [HG_LEVEL] [numeric](10, 0) NOT NULL,
    [DP_AS_LEVEL] [numeric](10, 0) NOT NULL,
    [CU_LEVEL] [numeric](10, 0) NOT NULL,
    [PB_LEVEL] [numeric](10, 0) NOT NULL,
    [CR_LEVEL] [numeric](10, 0) NOT NULL,
    [ZN_LEVEL] [numeric](10, 0) NOT NULL,
    [NI_LEVEL] [numeric](10, 0) NOT NULL,
 CONSTRAINT [PK_HM_POLLUTION_LEVEL] PRIMARY KEY CLUSTERED
(
    [OBJECTID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[HM_POLLUTION_LEVEL_DESCRIPTION]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[HM_POLLUTION_LEVEL_DESCRIPTION](
    [OBJECTID] [numeric](18, 0) NOT NULL,
    [CD_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [HG_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [DP_AS_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [CU_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [PB_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [CR_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [ZN_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
    [NI_LEVEL_DESCRIPTION] [nvarchar](20) NULL,
 CONSTRAINT [PK_HM_POLLUTION_LEVEL_DESCRIPTION] PRIMARY KEY CLUSTERED
(
    [OBJECTID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_parse_version_name]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_parse_version_name]
@version_name NVARCHAR (97),
@parsed_name NVARCHAR (64) OUTPUT,
@parsed_owner NVARCHAR (32) OUTPUT AS SET NOCOUNT ON
BEGIN
  --This is a private support function for SDE versioned views.
  DECLARE @error_string NVARCHAR(256)
  DECLARE @delimiter INTEGER
  DECLARE @SE_INVALID_VERSION_NAME INTEGER
  SET @SE_INVALID_VERSION_NAME = 50171
  -- Parse the version name.
  SET @delimiter = PATINDEX (''%".%'', @version_name)
  IF @delimiter <> 0
  BEGIN
    SET @parsed_owner = substring (@version_name, 1, @delimiter)
    SET @parsed_name = substring (@version_name, @delimiter + 2, 64)
  END
  ELSE
  BEGIN
    SET @delimiter = charindex (''.'', @version_name)
    IF @delimiter <> 0
    BEGIN
      SET @parsed_owner = substring (@version_name, 1, @delimiter - 1)
      SET @parsed_name = substring (@version_name, @delimiter + 1, 64)
    END
    ELSE
    BEGIN
      SET @parsed_name = @version_name
      EXECUTE sqlsde.sde.SDE_get_current_user_name @parsed_owner OUTPUT
    END
  END
  IF RTRIM (@parsed_name) IS NULL OR LEN (@parsed_name) = 0 OR
     RTRIM (@parsed_owner) IS NULL OR LEN (@parsed_owner) = 0
  BEGIN
    SET @error_string = ISNULL (@version_name, ''(null)'') +
                       '' is not a valid version name.''
    RAISERROR (@error_string,16,-1)
    RETURN @SE_INVALID_VERSION_NAME
  END
  RETURN 0
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[HM_STANDARD]') AND type in (N'U'))
BEGIN
CREATE TABLE [dbo].[HM_STANDARD](
    [OBJECTID] [numeric](18, 0) NOT NULL,
    [CD_STANDARD] [numeric](15, 5) NULL,
    [HG_STANDARD] [numeric](15, 5) NULL,
    [DP_AS_STANDARD] [numeric](15, 5) NULL,
    [CU_STANDARD] [numeric](15, 5) NULL,
    [PB_STANDARD] [numeric](15, 5) NULL,
    [CR_STANDARD] [numeric](15, 5) NULL,
    [ZN_STANDARD] [numeric](15, 5) NULL,
    [NI_STANDARD] [numeric](15, 5) NULL,
 CONSTRAINT [PK_HM_STANDARD] PRIMARY KEY CLUSTERED
(
    [OBJECTID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_is_user_sde_dba]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
BEGIN
execute dbo.sp_executesql @statement = N'CREATE FUNCTION [sde].[SDE_is_user_sde_dba] () RETURNS INTEGER
BEGIN
  --This is a private support function for SDE versioned views.
  DECLARE @user  NVARCHAR (128)
  DECLARE @is_dba INTEGER
  SELECT @user = user_name()
  IF ((@user <> ''sde'') AND (IS_SRVROLEMEMBER (''sysadmin'') <> 1))
  BEGIN
    IF (IS_MEMBER(''db_owner'') <> 1)
      SET @is_dba = 0 -- is not dba
    ELSE
      SET @is_dba = 1 -- is dba
  END
  ELSE
    SET @is_dba = 1 -- is dba
  RETURN @is_dba
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_get_current_user_name]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_get_current_user_name]
@current_user NVARCHAR (128) OUTPUT AS SET NOCOUNT ON
BEGIN
 DECLARE @delimiter INTEGER
 DECLARE @owner NVARCHAR(128)
 -- Get current user name. Format the user name as quoted identifier
 -- if the current user name does not comply with the rules for the format of
 -- regular identifiers
 SET @current_user = user_name()
 SET @delimiter = charindex(''~'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''.'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''%'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''^'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''('', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex ('')'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''-'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''{'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''}'', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex ('' '', @current_user)
 IF @delimiter = 0
   SET @delimiter = charindex (''\'', @current_user)
 IF  @delimiter <> 0
 BEGIN
   SET  @current_user = N''"'' + user_name() + N''"''
 END
 -- This stored prcedure will return current user name in upper case format
 -- if the database is case insenstive. In order to know if the database is case
 -- sensitive, here to compare the @current_user to the same string but in upper
 -- case. If they are equal, then the database is case insenstive and uppercase
 -- format of current user name will be returned.
 SET  @owner = UPPER(@current_user)
 IF  @current_user = @owner
   SET  @current_user = @owner
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[sde].[SDE_generate_guid]'))
EXEC dbo.sp_executesql @statement = N'CREATE VIEW [sde].[SDE_generate_guid] AS
 SELECT ''{'' + CONVERT(NVARCHAR(36),newid()) + ''}'' as guidstr
'
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_keyset_delete]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_keyset_delete]
@tableNameVal sysname,
@keysetIdVal INTEGER
AS
BEGIN
BEGIN TRAN keyset_tran
DECLARE @sql AS NVARCHAR(256)
SET @sql = N''DELETE FROM sde.'' + @tableNameVal + N''WHERE KEYSET_ID = '' + @keysetIdVal
EXECUTE (@sql)
COMMIT TRAN keyset_tran
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_keyset_remove]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_keyset_remove]
@tableNameVal sysname
AS
BEGIN
BEGIN TRAN keyset_tran
DECLARE @sql AS NVARCHAR(256)
SET @sql = N''DROP TABLE sde.'' + @tableNameVal
EXECUTE (@sql)
COMMIT TRAN keyset_tran
END
'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[sde].[ST_GEOMETRY_COLUMNS]'))
EXEC dbo.sp_executesql @statement = N'CREATE VIEW [sde].[ST_GEOMETRY_COLUMNS] (table_schema, table_name,       column_name, type_schema, type_name,  srs_id) AS        SELECT f_table_schema, f_table_name, f_geometry_column,''dbo'',       CASE geometry_type        WHEN 0 THEN ''ST_GEOMETRY''        WHEN 1 THEN ''ST_POINT''        WHEN 2 THEN ''ST_CURVE''        WHEN 3 THEN ''ST_LINESTRING''        WHEN 4 THEN ''ST_SURFACE''        WHEN 5 THEN ''ST_POLYGON''        WHEN 6 THEN ''ST_COLLECTION''        WHEN 7 THEN ''ST_MULTIPOINT''        WHEN 8 THEN ''ST_MULTICURVE''        WHEN 9 THEN ''ST_MULTISTRING''        WHEN 10 THEN ''ST_MULTISURFACE''        WHEN 11 THEN ''ST_MULTIPOLYGON''        ELSE ''ST_GEOMETRY''        END,        srid FROM sqlsde.sde.SDE_geometry_columns g'
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_geocol_def_insert]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_geocol_def_insert] @fTabCatVal NVARCHAR(32),     @fTabSchVal NVARCHAR(32), @fTabNameVal sysname, @fGeoColVal NVARCHAR(32), @gTabCatVal     NVARCHAR(32), @gTabSchVal NVARCHAR(32), @gTabNameVal sysname,    @storageTypeVal INTEGER, @geometryTypeVal INTEGER,    @CoordDimensionVal INTEGER, @sridVal INTEGER AS    SET NOCOUNT ON    BEGIN    BEGIN TRAN geocol_insert    INSERT INTO sqlsde.sde.SDE_geometry_columns (f_table_catalog,f_table_schema,f_table_name, f_geometry_column,     g_table_catalog,g_table_schema,g_table_name,storage_type, geometry_type,    coord_dimension, srid) VALUES ( @fTabCatVal, @fTabSchVal,    @fTabNameVal, @fGeoColVal, @gTabCatVal, @gTabSchVal, @gTabNameVal,    @storageTypeVal, @geometryTypeVal, @CoordDimensionVal, @sridVal)    COMMIT TRAN geocol_insert    END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_def_update]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_def_update]
@descVal NVARCHAR(65), @g1Val FLOAT, @g2Val FLOAT, @g3Val FLOAT,
@minxVal FLOAT, @minyVal FLOAT, @maxxVal FLOAT, @maxyVal FLOAT,
@minzVal FLOAT, @maxzVal FLOAT, @minmVal FLOAT, @maxmVal FLOAT,
@efVal INTEGER, @layerMaskVal INTEGER, @layerConVal  NVARCHAR(32),
@optArrSize INTEGER, @statDateVal INTEGER, @minIdVal INTEGER,
@layerIdVal INTEGER, @geometryTypeVal INTEGER, @secondarySridVal INTEGER AS
SET NOCOUNT ON
UPDATE sqlsde.sde.SDE_layers
SET description = @descVal, gsize1 = @g1Val, gsize2 = @g2Val,
  gsize3 = @g3Val, minx = @minxVal, miny = @minyVal, maxx = @maxxVal,
  maxy = @maxyVal, minz = @minzVal, maxz = @maxzVal, minm = @minmVal,
  maxm = @maxmVal, eflags = @efVal, layer_mask = @layerMaskVal,
  layer_config = @layerConVal, optimal_array_size = @optArrSize,
  stats_date = @statDateVal, minimum_id = @minIdVal, secondary_srid = @secondarySridVal
WHERE layer_id = @layerIdVal
UPDATE sqlsde.sde.SDE_geometry_columns
SET geometry_type = @geometryTypeVal
FROM sqlsde.sde.SDE_layers l
WHERE l.layer_id = @layerIdVal AND l.database_name = f_table_catalog
  AND l.owner = f_table_schema AND l.table_name = f_table_name AND
  l.spatial_column = f_geometry_column'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_geocol_def_delete]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_geocol_def_delete]                 @fTableCatalogVal NVARCHAR(32), @fTableSchemaVal NVARCHAR(32),                @fTableNameVal sysname, @fGeometryColumnVal NVARCHAR(32) AS                 SET NOCOUNT ON                BEGIN                BEGIN TRAN geocol_delete                DELETE FROM sqlsde.sde.SDE_geometry_columns WHERE f_table_catalog = @fTableCatalogVal AND                 f_table_schema = @fTableSchemaVal AND                 f_table_name = @fTableNameVal AND                 f_geometry_column = @fGeometryColumnVal                COMMIT TRAN geocol_delete                END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_geocol_def_change_table_name]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_geocol_def_change_table_name]              @tabNameVal sysname, @layerIdVal INTEGER AS SET NOCOUNT ON             UPDATE sqlsde.sde.SDE_geometry_columns SET f_table_name = @tabNameVal FROM sqlsde.sde.SDE_geometry_columns INNER JOIN sqlsde.sde.SDE_layers ON (            (sqlsde.sde.SDE_geometry_columns.f_table_catalog = sqlsde.sde.SDE_layers.database_name) AND             (sqlsde.sde.SDE_geometry_columns.f_table_schema = sqlsde.sde.SDE_layers.owner) AND             (sqlsde.sde.SDE_geometry_columns.f_table_name = sqlsde.sde.SDE_layers.table_name) AND             (sqlsde.sde.SDE_geometry_columns.f_geometry_column =  sqlsde.sde.SDE_layers.spatial_column) )              WHERE layer_id= @layerIdVal'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_srid_update]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_srid_update]              @sridVal INTEGER, @layeridVal INTEGER AS SET NOCOUNT ON BEGIN              DECLARE @g_table sysname              SET @g_table = N''f'' + cast(@layeridVal as NVARCHAR)              UPDATE sqlsde.sde.SDE_layers SET srid = @sridVal WHERE layer_id = @layeridVal
 UPDATE             sqlsde.sde.SDE_geometry_columns SET srid = @sridVal WHERE g_table_name = @g_table END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_def_envelope_update]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_def_envelope_update]              @minxVal FLOAT, @minyVal FLOAT, @maxxVal FLOAT,              @maxyVal FLOAT, @minzVal FLOAT, @maxzVal FLOAT,              @minmVal FLOAT, @maxmVal FLOAT, @layeridVal INTEGER AS              SET NOCOUNT ON              BEGIN             BEGIN TRAN layer_env_update             UPDATE sqlsde.sde.SDE_layers              SET minx = @minxVal,              miny = @minyVal,              maxx = @maxxVal,              maxy = @maxyVal,              minz = @minzVal,              maxz = @maxzVal,              minm = @minmVal,              maxm = @maxmVal              WHERE layer_id = @layeridVal             COMMIT TRAN layer_env_update             END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_def_mask_update]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_def_mask_update]              @maskVal INTEGER, @layeridVal INTEGER AS              SET NOCOUNT ON              BEGIN             BEGIN TRAN layer_mask_update             UPDATE sqlsde.sde.SDE_layers              SET layer_mask = @maskVal              WHERE layer_id = @layeridVal             COMMIT TRAN layer_mask_update             END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_def_change_table_name]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_def_change_table_name]              @tabNameVal sysname, @layerIdVal INTEGER AS SET NOCOUNT ON             UPDATE sqlsde.sde.SDE_layers SET              table_name = @tabNameVal  WHERE layer_id = @layerIdVal'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_layer_def_insert]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_layer_def_insert]
@layerIdVal INTEGER, @descVal NVARCHAR(65),@dbNameVal NVARCHAR(32),
@tabNameVal sysname, @ownerVal NVARCHAR(32), @spColVal NVARCHAR(32),
@eflagsVal INTEGER, @layerMaskVal INTEGER, @gsize1Val FLOAT, @gsize2Val FLOAT,
@gsize3Val FLOAT,@minxVal FLOAT,@minyVal FLOAT, @maxxVal FLOAT, @maxyVal FLOAT,
@minzVal FLOAT, @maxzVal FLOAT,@minmVal FLOAT, @maxmVal FLOAT, @cdateVal INTEGER,
@layerConfigVal NVARCHAR(32),@optArraySizeVal INTEGER, @statsDateVal INTEGER,
@minIdVal INTEGER, @sridVal INTEGER, @baseId INTEGER, @secondarySridVal INTEGER AS
SET NOCOUNT ON
BEGIN
BEGIN TRAN layer_insert
INSERT INTO sqlsde.sde.SDE_layers (layer_id,description,database_name,table_name,owner,
spatial_column,eflags,layer_mask,gsize1,gsize2,gsize3,minx,miny,maxx,maxy,
minz,maxz,minm, maxm,cdate,layer_config,optimal_array_size,stats_date,
minimum_id,srid,base_layer_id,secondary_srid) VALUES (@layerIdVal, @descVal,
@dbNameVal, @tabNameVal,
@ownerVal, @spColVal,@eflagsVal, @layerMaskVal, @gsize1Val, @gsize2Val, @gsize3Val,
@minxVal, @minyVal, @maxxVal, @maxyVal,@minzVal, @maxzVal, @minmVal, @maxmVal,
@cdateVal,@layerConfigVal, @optArraySizeVal, @statsDateVal, @minIdVal, @sridVal,
@baseId, @secondarySridVal)
COMMIT TRAN layer_insert
END'
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[sde].[SDE_geocol_def_update]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [sde].[SDE_geocol_def_update]             @layerIdVal INTEGER, @srTextVal TEXT, @xycluster_tolVal FLOAT,            @zcluster_tolVal FLOAT, @mcluster_tolVal FLOAT AS SET NOCOUNT ON            UPDATE sqlsde.sde.SDE_spatial_references SET srtext = @srTextVal,            xycluster_tol = @xycluster_tolVal, zcluster_tol = @zcluster_tolVal,            mcluster_tol = @mcluster_tolVal WHERE srid  in (SELECT srid            FROM sqlsde.sde.SDE_layers WHERE layer_id = @layerIdVal)'
END
GO

抱歉!评论已关闭.