dbo.mail_log

Description

Properties

Name Value
File Collation
File Group
Filestream File Group
Is Partitioned

False

Partitioned Column
Partition Scheme
File Groups
Filestream Partition Scheme
Filestream File Groups
Heap

True

Full Text Catalog
Full Text
Compression NONE
Row Count (~) 0
Created 10/1/2007 3:29:34 PM
Last Modified 4/2/2016 11:03:41 PM

Columns

3
Key Name Data Type Length Precision Scale Not Null Identity Rule Default Computed Persisted Description
time_stamp datetime 8 23 3

True

False

False

user_id int 4 10 0

True

False

False

subject varchar 80 0 0

False

False

False

Indexes

2
Key Name Columns Unique Type Description
PK__mail_log__267ABA7A time_stamp, user_id

True

XAK1mail_log user_id, time_stamp

True

Triggers

2
Name ANSI Nulls ON Quoted Identifier ON On Not For Replication Description
tI_mail_log

True

True

AFTER INSERT

False

tU_mail_log

True

True

AFTER UPDATE

False

Foreign Keys

1
Name Columns Description
FK__mail_log__user_i__6B24EA82 user_id

SQL Script

Copy
CREATE TABLE dbo.mail_log (
  time_stamp datetime NOT NULL,
  user_id int NOT NULL,
  subject varchar(80) NULL,
  PRIMARY KEY NONCLUSTERED (time_stamp, user_id) WITH (FILLFACTOR = 90)
)
ON [PRIMARY]
GO

CREATE UNIQUE INDEX XAK1mail_log
  ON dbo.mail_log (user_id, time_stamp)
  WITH (FILLFACTOR = 90)
  ON [PRIMARY]
GO

SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE OR ALTER trigger dbo.tI_mail_log on dbo.mail_log for INSERT as
/* ERwin Builtin Mon Oct 01 10:32:44 2007 */
/* INSERT trigger on mail_log */
begin
  declare  @numrows int,
           @nullcnt int,
           @validcnt int,
           @errno   int,
           @errmsg  varchar(255)

  select @numrows = @@rowcount
  /* ERwin Builtin Mon Oct 01 10:32:44 2007 */
  /* users R/9 mail_log ON CHILD INSERT RESTRICT */
  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="users"
      CHILD_OWNER="", CHILD_TABLE="mail_log"
      P2C_VERB_PHRASE="R/9", C2P_VERB_PHRASE="", 
      FK_CONSTRAINT="R_9", FK_COLUMNS="user_id" */

  if
    /* %ChildFK(" or",update) */
    update(user_id)
  begin
    select @nullcnt = 0
    select @validcnt = count(*)
      from inserted,users
        where
          /* %JoinFKPK(inserted,users) */
          inserted.user_id = users.user_id
    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */
    
    if @validcnt + @nullcnt != @numrows
    begin
      select @errno  = 30002,
             @errmsg = 'Cannot INSERT mail_log because users does not exist.'
      goto error
    end
  end


  /* ERwin Builtin Mon Oct 01 10:32:44 2007 */
  return
error:
    raiserror (@errmsg,@errno,1) 
    rollback transaction
end

GO
CREATE OR ALTER trigger dbo.tU_mail_log on dbo.mail_log for UPDATE as
/* ERwin Builtin Mon Oct 01 10:32:44 2007 */
/* UPDATE trigger on mail_log */
begin
  declare  @numrows int,
           @nullcnt int,
           @validcnt int,
           @instime_stamp datetime, 
           @insuser_id int,
           @errno   int,
           @errmsg  varchar(255)

  select @numrows = @@rowcount
  /* ERwin Builtin Mon Oct 01 10:32:44 2007 */
  /* users R/9 mail_log ON CHILD UPDATE RESTRICT */
  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="users"
      CHILD_OWNER="", CHILD_TABLE="mail_log"
      P2C_VERB_PHRASE="R/9", C2P_VERB_PHRASE="", 
      FK_CONSTRAINT="R_9", FK_COLUMNS="user_id" */

  if
    /* %ChildFK(" or",update) */
    update(user_id)
  begin
    select @nullcnt = 0
    select @validcnt = count(*)
      from inserted,users
        where
          /* %JoinFKPK(inserted,users) */
          inserted.user_id = users.user_id
    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */
    
    if @validcnt + @nullcnt != @numrows
    begin
      select @errno  = 30007,
             @errmsg = 'Cannot UPDATE mail_log because users does not exist.'
      goto error
    end
  end


  /* ERwin Builtin Mon Oct 01 10:32:44 2007 */
  return
error:
    raiserror (@errmsg,@errno,1) 
    rollback transaction
end

GO

ALTER TABLE dbo.mail_log
  ADD FOREIGN KEY (user_id) REFERENCES dbo.users (user_id)
GO

Depends On

2

Used By

1