Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fera29

criar uma tabela com logs dos usuários

Recommended Posts

Alguém pode me ajudar como eu crio uma procedure no SQLSERVER para armazenar logs, por exemplo, tenho alguns usuários que fazem inserção no banco de dados, gostaria de saber quem fez as inserções e quando e armazenar isso em uma outra tabela para ter controle, como se fosse um log, mas eu quero numa tabela.obrigado pessoal, depois eu pago a cerveja... :o

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite.

 

Faça uso das funções user_name() e getdate(), como exemplo :

 

Create Table TBL_LOG
(
log_id		Int	Identity(1, 1)	NOT NULL,
log_user	VarChar(30)		NOT NULL,
log_date	DateTime		NOT NULL,
Constraint PK_LOG Primary Key Clustered
(
	log_id
) With FillFactor = 100
)
GO

Create Table TBL_TESTE
(
col1	Int		NOT NULL,
col2	VarChar(10)	NOT NULL
)
GO

Create Trigger trg_INS_TESTE On TBL_TESTE For Insert
As Begin Insert Into TBL_LOG (log_user, log_date) Values (User_Name(), GetDate())
End
GO

Insert Into TBL_TESTE (col1, col2) Values (1, 'teste1')
WaitFor Delay '00:00:02'
Insert Into TBL_TESTE (col1, col2) Values (2, 'teste2')
WaitFor Delay '00:00:02'
Insert Into TBL_TESTE (col1, col2) Values (3, 'teste3')
WaitFor Delay '00:00:02'
Insert Into TBL_TESTE (col1, col2) Values (4, 'teste4')
GO

Select *
 From TBL_TESTE GO

Select *
 From TBL_LOG GO

Drop Table TBL_TESTE
GO
Drop Table TBL_LOG
GO

 

Espero ter ajudado.

 

Att,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, esqueci de te dizer uma coisa.

 

Se o seu sistema tiver mtos inserts, lembre-se q isso irá consumir tempo e disco.

 

você pode usar o mesmo conceito para implementar o update e o delete.

 

Se você quiser guardar o conteúdo de alguma linha, na sua trigger faça consulta nas tabelas INSERTED e DELETED. Essas tabelas só existem dentro da trigger.

 

Att,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, eu te amo, quero me casar com você...Brincadeira...Valeu cara, ajudou muito mesmo, se tiver alguma dúvida em PHP ou MYSQL, tamos aí...valeu e abraços... :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.