2012年3月22日星期四
Any way to track who/when data was deleted ?
I'm using merge replication with SQL Server 2000 on Windows 2003 server,
with MSDE2000A clients with anon pull subscriptions.
Some data has been (mysteriously) deleted and I would like to find out more
about who/when it was deleted.
Is there any way (system tables, transaction log ?) of determining who/when
certain records were deleted ?
I noticed that in my publication DB the MSmerge_tombstone table has a field
that shows either "user delete" or "system delete" - what is a System
Delete?
Thanks for your help.
Darren
No, you have to write custom triggers to track this information.
What you will get is the user that makes this change on the local server,
and then the account your merge agent runs under. So if you make a change on
your publisher, there is no way to have this user name transferred to the
subcriber, unless you also replicated an audit table.
User delete is when a user deletes a record, system delete is when a system
process (normally in response to a conflict) deletes the record.
Hilary Cotter
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
"Darren Wallace" <darren@.pcresources.com.au> wrote in message
news:eQdrh$FmEHA.3524@.TK2MSFTNGP12.phx.gbl...
> Hello,
> I'm using merge replication with SQL Server 2000 on Windows 2003 server,
> with MSDE2000A clients with anon pull subscriptions.
> Some data has been (mysteriously) deleted and I would like to find out
more
> about who/when it was deleted.
> Is there any way (system tables, transaction log ?) of determining
who/when
> certain records were deleted ?
> I noticed that in my publication DB the MSmerge_tombstone table has a
field
> that shows either "user delete" or "system delete" - what is a System
> Delete?
> Thanks for your help.
> Darren
>
|||www.lumigent.com
"Darren Wallace" <darren@.pcresources.com.au> wrote in message
news:eQdrh$FmEHA.3524@.TK2MSFTNGP12.phx.gbl...
> Hello,
> I'm using merge replication with SQL Server 2000 on Windows 2003 server,
> with MSDE2000A clients with anon pull subscriptions.
> Some data has been (mysteriously) deleted and I would like to find out
more
> about who/when it was deleted.
> Is there any way (system tables, transaction log ?) of determining
who/when
> certain records were deleted ?
> I noticed that in my publication DB the MSmerge_tombstone table has a
field
> that shows either "user delete" or "system delete" - what is a System
> Delete?
> Thanks for your help.
> Darren
>
2012年3月20日星期二
Any way to notify clients of DB changes?
EverettDo you want the notification to go through an email or an actual pop-up on their machine ? Under what conditions would you be sending this ?|||Use triggers?|||The notifications would be sent when specified data changes. I can fire a trigger when the data is inserted/updated/deleted, but how can I get this to the clients? I want to fire an event in a VB application, as opposed to sending out an email. For this reason, SQL mail or notification services don't seem to be the right tools to use.
Everett|||Probably write a COM object and fire a method via a trigger. Look up sp_OACreate in the Books Online.
Either that or an xp_commandshell and write a command line prog to do the same thing.
I KNOW the above two would work... If you wanted to get fancy, , you could probably also implement it by having a SQL second connection with read uncommited isoaltion leve that doesn't time out and have the trigger insert to a table that all of the clients are doing a never ending select from. This solution seems interesting, but, is most likely untrodden territory.
Originally posted by Ev Conrad
The notifications would be sent when specified data changes. I can fire a trigger when the data is inserted/updated/deleted, but how can I get this to the clients? I want to fire an event in a VB application, as opposed to sending out an email. For this reason, SQL mail or notification services don't seem to be the right tools to use.
Everett
2012年2月16日星期四
Any Distributed Data failure
I have one windows server 2003 and 2 windows XP clients on one machine by virtual pc.
All pings to each other.
The 2 windows XP clients are joining a domain in the server.
They have administrator accounts and administrative privilages on each other.
On each windows there is SQL2000 with SP3 using windows authentication.
Each MSSQLServer and other SQL Services log in by the administrator domain account and has the domain account of the other windows in sysadmin role.
Both XP SQL Servers are linked to each other.
MSDTC is running on all servers with allowing every available option by Services Components.
Firewalls are off in all servers.
Although, neither distributed transactions work giving this error:
"Server: Msg 7391, Level 16, State 1, Line 7
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction."
Also Snapshot agent in replication cannot start.
My Question is: Is there something to do with RPC and how?
Please help...
Thanks.I found the answer in:
http://support.microsoft.com/kb/841251
Thanks