CREATE TABLE [dbo].[ca_manager]
(
[manager_uuid] [binary] (16) NOT NULL,
[domain_uuid] [binary] (16) NULL,
[label] [nvarchar] (255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[host_uuid] [nchar] (36) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[host_name] [nvarchar] (255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[description] [nvarchar] (255) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[creation_user] [nvarchar] (255) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[creation_date] [int] NULL,
[last_update_user] [nvarchar] (255) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
[last_update_date] [int] NULL,
[version_number] [int] NULL CONSTRAINT [DF__ca_manage__versi__25FB978D] DEFAULT ((0)),
[auto_rep_version] [timestamp] NULL
) ON [PRIMARY]
GO
CREATE trigger r_del_manager
on ca_manager
instead of delete
as
declare @old_manager_uuid as binary(16);
begin
DECLARE cur_del_manager CURSOR
FOR select manager_uuid from deleted
OPEN cur_del_manager
FETCH NEXT FROM cur_del_manager INTO @old_manager_uuid
WHILE @@FETCH_STATUS = 0
BEGIN
execute p_integrity_d_manager @old_manager_uuid ;
delete from ca_manager where manager_uuid=@old_manager_uuid
FETCH NEXT FROM cur_del_manager INTO @old_manager_uuid;
END
CLOSE cur_del_manager
DEALLOCATE cur_del_manager
end
GO
CREATE trigger r_upd_verno_manager
on ca_manager
after update
as
declare @old_verno as int;
declare @new_verno as int;
begin
if update (version_number)
begin
DECLARE mycur CURSOR
FOR select deleted.version_number, inserted.version_number from inserted, deleted
OPEN mycur
FETCH NEXT FROM mycur INTO @old_verno,@new_verno
WHILE @@FETCH_STATUS = 0
BEGIN
execute p_integrity_version_number @old_verno , @new_verno ;
FETCH NEXT FROM mycur INTO @old_verno,@new_verno;
END
CLOSE mycur
DEALLOCATE mycur
end;
end;
GO
CREATE trigger rule_d_so_removed_manager
on ca_manager
after delete
as
begin
declare @ddis_hw_uuid binary(16);
DECLARE cur_d_so_removed_manager CURSOR
FOR select manager_uuid from deleted
OPEN cur_d_so_removed_manager
FETCH NEXT FROM cur_d_so_removed_manager INTO @ddis_hw_uuid
WHILE @@FETCH_STATUS = 0
BEGIN
execute proc_d_so_removed_object @ddis_hw_uuid
FETCH NEXT FROM cur_d_so_removed_manager INTO @ddis_hw_uuid;
END
CLOSE cur_d_so_removed_manager
DEALLOCATE cur_d_so_removed_manager
end;
GO
CREATE trigger rule_i_new_so_manager
on ca_manager
after insert
as
begin
declare @_obj_uuid binary(16);
declare @_clsid integer;
declare @_uri nvarchar(255);
select @_obj_uuid = (select manager_uuid from inserted);
select @_clsid = 1003;
select @_uri = (select creation_user from inserted);
execute proc_i_new_so_object @_obj_uuid, @_clsid, @_uri;
end;
GO
CREATE trigger usd_trg_d_ca_manger_tbl_ver
on ca_manager
for delete as
begin
exec usd_proc_u_tbl_ver 2, -1, -1, -1
end
GO
CREATE trigger usd_trg_u_ca_manger_tbl_ver
on ca_manager
for insert, update as
begin
if (update(host_name) or update(host_uuid))
begin
exec usd_proc_u_tbl_ver 2, -1, -1, -1
end
end
GO
ALTER TABLE [dbo].[ca_manager] ADD CONSTRAINT [XPKca_manager] PRIMARY KEY CLUSTERED ([manager_uuid]) ON [PRIMARY]
GO
GRANT SELECT ON [dbo].[ca_manager] TO [ca_itrm_group]
GRANT INSERT ON [dbo].[ca_manager] TO [ca_itrm_group]
GRANT DELETE ON [dbo].[ca_manager] TO [ca_itrm_group]
GRANT UPDATE ON [dbo].[ca_manager] TO [ca_itrm_group]
GRANT SELECT ON [dbo].[ca_manager] TO [ca_itrm_group_ams]
GRANT SELECT ON [dbo].[ca_manager] TO [regadmin]
GRANT SELECT ON [dbo].[ca_manager] TO [upmadmin_group]
GRANT INSERT ON [dbo].[ca_manager] TO [upmadmin_group]
GRANT DELETE ON [dbo].[ca_manager] TO [upmadmin_group]
GRANT UPDATE ON [dbo].[ca_manager] TO [upmadmin_group]
GRANT SELECT ON [dbo].[ca_manager] TO [upmuser_group]
GRANT INSERT ON [dbo].[ca_manager] TO [upmuser_group]
GRANT DELETE ON [dbo].[ca_manager] TO [upmuser_group]
GRANT UPDATE ON [dbo].[ca_manager] TO [upmuser_group]
GO