關於資料記錄的動作記錄

來源:互聯網
上載者:User

最近做個項目要求挺多的,其中一條就是記錄關於資料記錄的動作記錄,而且日誌要可以分析的.

於是乎我開始分析這個需求:

1、以前我做的其它項目大多隻要細化到誰改了,什麼時間改的.就差不多了.可是這次那幫傢伙哦要求的可以分析資料的來龍去脈,也就是說要記錄這條資料是誰,什麼時間,內容,建立的。還有誰什麼時間改的,改了什麼內容。誰什麼時間刪除了這條記錄。

 

2、從上面我理清了要做的三件事:1、建立時寫日誌2、每次修改寫日誌3、刪除時寫日誌

 

3、於是乎我要考慮日誌表和實體表之間的關係,每個實體表對應一個日誌表.

日誌表中多三個欄位XGR--修改人  XGSJ--修改時間 XGLX--修改類型(可以是“INSERT、UPDATE、DELETE”),而且BH也不可以做標識的(實體表裡的BH要做標識).

 

4、實現這三件事的Sql.資料表的結構如下

 

 

 

對應資料來源配置的Sql語句:

Select :

Select * from SCD_SGRYYFB

 

Update :

Insert into SCD_SGRYYFB_XGJL([ZAH], [RQ], [RS], [BH], [BS],RYFL,XGR,XGSJ,XGLX)
values(@ZAH,@RQ,@RS,@BH,@BS,@RYFL,@XGR,getDate(),'UPDATE')
Update [SCD_SGRYYFB]  set [ZAH]=@ZAH,RQ=@RQ,RS=@RS,BS=@BS,RYFL=@RYFL where BH=@BH

 

INSERT:

Insert into SCD_SGRYYFB([ZAH], [RQ], [RS], [BS],RYFL)
values(@ZAH,@RQ,@RS,1,@RYFL)
declare @@varBH int
select @@varBH=@@identity
Insert into SCD_SGRYYFB_XGJL([ZAH], [RQ], [RS], [BH], [BS],RYFL,XGR,XGSJ,XGLX)
values(@ZAH,@RQ,@RS,@@varBH ,1,@RYFL,@XGR,getDate(),'INSERT')

 

DELETE :

Insert into SCD_SGRYYFB_XGJL([ZAH], [RQ], [RS], [BH], [BS],RYFL,XGR,XGSJ,XGLX)
values(@ZAH,@RQ,@RS,@BH ,@BS,RYFL,@XGR,getDate(),'DELETE')
Delete from SCD_SGRYYFB where BH=@BH

 

@XGR賦值:

 protected void SqlDataSource1_Inserting(object sender, SqlDataSourceCommandEventArgs e)
    {

          e.Command.Parameters["@XGR"].Value = User.Identity.Name;//這句要自己客戶化的,要求取當前系統登陸使用者的ID

}

protected void SqlDataSource1_Deleting(object sender, SqlDataSourceCommandEventArgs e)
    {

          e.Command.Parameters["@XGR"].Value = User.Identity.Name;//這句要自己客戶化的,要求取當前系統登陸使用者的ID

}

protected void SqlDataSource1_Updating(object sender, SqlDataSourceCommandEventArgs e)
    {

          e.Command.Parameters["@XGR"].Value = User.Identity.Name;//這句要自己客戶化的,要求取當前系統登陸使用者的ID

}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.