Tables [dbo].[AccountProfileDocument]
Properties
PropertyValue
CollationSQL_Latin1_General_CP1_CI_AS
Row Count (~)0
Created8:34:15 AM Friday, December 7, 2018
Last Modified8:49:37 AM Thursday, December 5, 2024
Columns
NameData TypeMax Length (Bytes)Allow NullsIdentityDefault
Cluster Primary Key PK_AccountProfileDocument: AccountProfileDocumentIDAccountProfileDocumentIDint4
No
1 - 1
Foreign Keys FK_AccountProfileDocument_AccountProfiles: [dbo].[AccountProfiles].AccountProfileFIDIndexes IX_AccountProfileDocument_AccountProfileFID: AccountProfileFIDAccountProfileFIDint4
No
DocumentNamevarchar(128)128
No
Foreign Keys FK_AccountProfileDocument_SysUser: [dbo].[Sysuser].AttachedByFIDIndexes IX_AccountProfileDocument_AttachedByFID: AttachedByFIDAttachedByFIDint4
No
AttachedOndatetime8
No
LastModifieddatetime8
No
ExternalImageFIDint4
No
Foreign Keys FK_AccountProfileDocument_AccountProfileDocumentType: [dbo].[AccountProfileDocumentType].AccountProfileDocumentTypeFIDAccountProfileDocumentTypeFIDint4
No
DocumentDescriptionvarchar(64)64
Yes
DocumentNotesvarchar(256)256
Yes
Inactivebit1
No
((0))
Indexes Indexes
NameColumnsUnique
Cluster Primary Key PK_AccountProfileDocument: AccountProfileDocumentIDPK_AccountProfileDocumentAccountProfileDocumentID
Yes
IX_AccountProfileDocument_AccountProfileFIDAccountProfileFID
IX_AccountProfileDocument_AttachedByFIDAttachedByFID
Triggers Triggers
NameANSI Nulls OnQuoted Identifier OnOn
AccountProfileDocumentDeleted
Yes
Yes
After Delete
Foreign Keys Foreign Keys
NameColumns
FK_AccountProfileDocument_AccountProfileDocumentTypeAccountProfileDocumentTypeFID->[dbo].[AccountProfileDocumentType].[AccountProfileDocumentTypeID]
FK_AccountProfileDocument_AccountProfilesAccountProfileFID->[dbo].[AccountProfiles].[AccountProfileID]
FK_AccountProfileDocument_SysUserAttachedByFID->[dbo].[Sysuser].[SysUserID]
Permissions
TypeActionOwning Principal
GrantDeleteMssExec
GrantInsertMssExec
GrantSelectMssExec
GrantUpdateMssExec
SQL Script
CREATE TABLE [dbo].[AccountProfileDocument]
(
[AccountProfileDocumentID] [int] NOT NULL IDENTITY(1, 1),
[AccountProfileFID] [int] NOT NULL,
[DocumentName] [varchar] (128) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[AttachedByFID] [int] NOT NULL,
[AttachedOn] [datetime] NOT NULL,
[LastModified] [datetime] NOT NULL,
[ExternalImageFID] [int] NOT NULL,
[AccountProfileDocumentTypeFID] [int] NOT NULL,
[DocumentDescription] [varchar] (64) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[DocumentNotes] [varchar] (256) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Inactive] [bit] NOT NULL CONSTRAINT [DF_AccountProfileDocument_Inactive] DEFAULT ((0))
) ON [PRIMARY]
GO

-- Deletes any documents that are stored in the external document db that are linked to AccountProfileDocuments getting deleted
create trigger [dbo].[AccountProfileDocumentDeleted] on [dbo].[AccountProfileDocument]
after delete as
set nocount on
    declare @theExternalDocumentImageIDs IntList

    insert into @theExternalDocumentImageIDs
    select deleted.ExternalImageFID
    from deleted
    where deleted.ExternalImageFID is not null
    
    if( 0 < ( select count(*) from @theExternalDocumentImageIDs ) )
    begin
        declare @theDocDBName sysname  
        set @theDocDBName = dbo.GetDocDbName()
        declare @theDeleteCommand nvarchar(max)


        set @theDeleteCommand =
        'delete ' + @theDocDBName + '..DocumentImage ' +
        'from @inExternalDocumentImageIDs theExternalDocumentImageIDs ' +
        'inner join ' + @theDocDBName + '..DocumentImage DocumentImage on theExternalDocumentImageIDs.Item = DocumentImage.DocumentImageID '

        exec sp_executesql @theDeleteCommand, N'@inExternalDocumentImageIDs IntList readonly', @theExternalDocumentImageIDs

    end
GO
ALTER TABLE [dbo].[AccountProfileDocument] ADD CONSTRAINT [PK_AccountProfileDocument] PRIMARY KEY CLUSTERED  ([AccountProfileDocumentID]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_AccountProfileDocument_AccountProfileFID] ON [dbo].[AccountProfileDocument] ([AccountProfileFID]) ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [IX_AccountProfileDocument_AttachedByFID] ON [dbo].[AccountProfileDocument] ([AttachedByFID]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[AccountProfileDocument] ADD CONSTRAINT [FK_AccountProfileDocument_AccountProfileDocumentType] FOREIGN KEY ([AccountProfileDocumentTypeFID]) REFERENCES [dbo].[AccountProfileDocumentType] ([AccountProfileDocumentTypeID])
GO
ALTER TABLE [dbo].[AccountProfileDocument] ADD CONSTRAINT [FK_AccountProfileDocument_AccountProfiles] FOREIGN KEY ([AccountProfileFID]) REFERENCES [dbo].[AccountProfiles] ([AccountProfileID])
GO
ALTER TABLE [dbo].[AccountProfileDocument] ADD CONSTRAINT [FK_AccountProfileDocument_SysUser] FOREIGN KEY ([AttachedByFID]) REFERENCES [dbo].[Sysuser] ([SysUserID])
GO
GRANT SELECT ON  [dbo].[AccountProfileDocument] TO [MssExec]
GRANT INSERT ON  [dbo].[AccountProfileDocument] TO [MssExec]
GRANT DELETE ON  [dbo].[AccountProfileDocument] TO [MssExec]
GRANT UPDATE ON  [dbo].[AccountProfileDocument] TO [MssExec]
GO
Uses
Used By