Tracking All Table Modifcations
Apr 26, 2004I am looking for an efficient way to track all modications to a a database. I have come up with a few ideas but none are very efficient.
View 6 RepliesI am looking for an efficient way to track all modications to a a database. I have come up with a few ideas but none are very efficient.
View 6 RepliesI'm looking for a way to monitor I/O(select, delete, & updates) to a particular SQL Table for a period of time. Any suggestions?
View 3 Replies View Relatedhi there,
how to retrieve a specific Row from a table based on its row number???
Example:
Select [2nd Row] from TAB001 in SQL Server2000.
regards,
Nilotpal
Hi,
Can anybody let me know if there are ways to programatically track changes made to a SQL SERVER CE table? I am writing a db monitoring tool on SQL server CE which should track any changes made to the table.(Insert update and delete)
We could have done this using triggers on Sql Server 2005. Since triggers are not supported on SQL Server CE, are there any alternate ways to achieve this functionality?
Regards,
Ananth
Hello,
Can a table be tracked if it does not have a primary key? I am using rda.Pull method in VS2005 using C#. If not, what are my options? Any help is appreciated.
Thanks.
Hello,
I receive an error message when I try to Push data that the table is not tracked. However, when I try to turn on the tracking option it gives me an error that the table is a multi query table and therefore cannot be tracked. Here is my code to Pull the table.
string TPDAPull = string.Format("SELECT Table1.Field1,Table1.Field2, Table1.Field3, Table1.Field4, from Table1 Left Join Table2 on Table1.Field1 =Table2.Field1 WHERE Table2.Field12='{0}'", this.FindWorker(var));
rda.Pull("Table1", TPDAPull, rdaOleDbConnectString, RdaTrackOption.TrackingOn);
This table does not have a primary key. I was wondering what can I do in this situation? I do not want to Pull the whole table. Any suggestions would be greatly appreciated. I am working in VS 2005, NCF2.0, C#, WM5.0.
Thanks in advance!
best way to track changes for a very pesky table.We pull down a table from an Oracle database (via linked server) into our SQL Server on a daily basis. The data in this table is just truncated and reloaded daily. There is no "history" kept in the oracle database and values are not being "updated" its just dropped and repopulated.
So, I have toyed around with CDC and even creating my own custom auditing method but I can't come up with a reasonable solution that doesn't involve a massive audit table that doesn't provide much useful info.
For example, there are two date fields in the table that my customer wishes to have history tracked for. Every day, this table is truncated and reloaded - however those dates may stay the same for many many many months. If I turn on CDC, I will get tons of audit records for a delete and an insert every day but the values for the two date fields may not have even changed.
The table has tons of fields in it but I only care about the 2 date fields for history purposes.Here is a snippet of the table (I took out all the additional fields in the table and just left the two date fields that need to be tracked):
CREATE TABLE [dbo].[Fake_Name](
[lin] [char](6) NOT NULL,
[boip_no] [char](6) NOT NULL,
[dt_tc] [varchar](25) NULL,
[Code] .....
method to track changes to this table with it being truncated every day?
I am helping a friend with a gamming website. There are pages which displays data from other clans.
Members need to register and login to view full clan details. User who have not logged in can only view partial data about a clan.
I need to keep track of the kind of hits each page received. That is I want to tell say "Clan X" that these particular members viewed your page these many times and on these dates and these members who have not registered have viewed your page these many times and on these dates.
I am using ASP with MS SQL.
I would like some help on designing the table layout that is efficient for keeping track of the visitors for each page.
Any help will be appreciated.
Please Help.
How do you track changes to objects in SQL Server.
For example changes in stored procedure,views and indexes. What system table or column track or indicate changes in text of sp or views.
Help appreciated.
Regards
We are building an inventory management system complete with BOM. It is important to track what employee is updating what tables. Currently all such tables have a Date field that is updated when a change is made, and an EmployeeID field which records the employee making the change. I am wondering if someone knows of a better way to track this information. Any suggestions?
View 2 Replies View RelatedHi,
I am trying to create a tracking spreadsheet for my SQL Servers in order to keep track of every thing.
Here is a example of what I have:
DateTracking IDServerIssuesSolution
8/26/20046760FORMSCAPEDOCSBackup failSwitch Transaction logs to the D: and left the database backup on the E:
Should I be more detailed and add some more fields and if yes can you recommend some.
Thanks
I have an application that uses SQL server. Is there a way to find out what SQL statements the application is passing to the SQL server?
I would like to know all kinds of activities going on in the background of the application. I am sure there is a way.
Thanks in advance.
OK. For DDL, please refer to the classical Northwind ORDERS table,problem/challenge, find the longest duration (start_date andend_date), during which, no orders were placed.FYI, column names by the order of colid per syscolumns:OrderIDCustomerIDEmployeeIDOrderDateRequiredDateShippedDateShipViaFreightShipNameShipAddressShipCityShipRegionShipPostalCodeShipCountryAny idea/approach? TIA.
View 1 Replies View RelatedHi
I'm trying to get CDC going, it works however when i query the LSN using the functions i get no changes. The min and max LSN returns null. SQL agent is running, db is on full recovery model etc.
any ideas ?
thanks
Yesterday I had problem with that a sp that contained join that the developer had forgotten the where part. The sp join very large tables and sp took more 95% dual itanium processor. How do fastest track this down when it accrues. Find the sp or sql that running and consume this much processor resources. I tried with a lot. Sp_who, sp_who2, activity monitor.
View 5 Replies View Relatedim trying to create a procedure that will insert/update a small table
that has an ID, AmtBefore & AmtAfter.
this is just a table that i'd be using to monitor other activity on the database.
i'm really pulling a price + ID every hour and i need to track that somehow and know when the procedure runs if a price is lower than it was the last hour, plus of course keep the ID's straight.
does anyone have a good approach to something like this?
thanks for any help on this
rik
We are building an inventory management system complete with BOM. It is important to track what employee is updating what tables. Currently all such tables have a Date field that is updated when a change is made, and an EmployeeID field which records the employee making the change. I am wondering if someone knows of a better way to track this information. Any suggestions?
View 4 Replies View RelatedHi all,
I have several transaction tables on which I need to track the changes. That is I need to maitain
the history of changes. Only few column values are changed often.
Which is the best way for tracking the changes.
1.Store the whole record after the change ?
Or
2.Store the ColumnName & its respective old & new value ?
Or any other better.
Note : UI part & SP's will take care of the tracking & no plans for triggers.
Thanks in advance,
HHA
Hi all how do I track when a users opens, enters data in a database. How can I track them??
View 1 Replies View RelatedI have a table in my database and it holds some important information,I want to track the users
who are executing DML commands(select,update,delete) on the data in that table.
Is there any way do that?If so how could i implement that.can any one help me in this regard?
Thanks in advance...
Hey everybody,
First thank you for all your help thus far. Now I'm stuck again. I've been doing a lot of reading on triggers and logging information into tables but I've been trying to capture how many times someone enters an item into the search box.
So every time somebody types Gumballs into the search box I want to capture it and the name of the person who is currently logged in. Is there away to do this? Maybe this is something that I should be checking in ASP.NET forums?
Thanks in advanced guys!
Hello everyone, I have a fairly unique need :) I am trying todetermine the use/clients for databases in my corporation that I ammaintaining, but that noone seems to know what they are for. Many ofthese databases never seem to have anybody connected to them in thecurrent activity.What I'd like to do is find a way to audit the logins, so everytimesomeone connects to a database it simply logs the clients IP address,what login they used, and maybe what time. I've been searching googlefor this and have found tons of information on auditing the logins,but not the clients, such as by ip. Any help in this regard would beGREATLY appriciated!Joshua
View 2 Replies View RelatedI have a device application that simply needs to upload data to a server. The preferred DB server is Oracle but I've made it work using RDA and SQL Server. The problem I'm having is that it just needs to upload data, whichh I send using the RDA.Push() method. The data arrives just fine, the first time. With every subsequent upload all of the previous data is deleted fromt he server. Apparently RDA is tracking the deletion of the previously uploaded data locally and on the next .Push deleting that data from the server.
My question is: Is it possible to prevent RDA from deleting data on SQL Server? I attempted to delete the rows from the __sysDeletedRows/__sysRowTrack tables but got a "Data is read only" error.
I hoipe someone can point me in the right direction here.
I have an application with the following requirements (using SQL CE 2 alas)
A set of tables on the server that need to be imported to the handheld. Using rda, I need to get the modifications to these tables from the server (add/edit/delete) but the handheld will never update these tables.
A set of tables on the server that need to be imported to the handheld. The handheld needs to add/edit existing records, and it needs to get any changes from the server.
A set of tables on the server where the handheld needs to import a subset of the records. It needs to add (but not edit) new records, upload the new records to the server, and download any changed (add/edit/delete) records to the handheld.
What tracking options should I use in these 3 cases?
The problem comes in that I need to have some foreign key relationships in the database on the handheld. Since rda munges the names of primary keys (and indexes), I do not know of a good way to add these foreign key constraints. Any suggestions?
Thanks
Hi,
I want to keep track of data change and want to enter the pk such as testkey and timing in different table. is it possible without having to write trigger on the table!!!
I've got a table that has frequent updates to it. I want 100% change tracking on this table though, so we can rollback to any previous version, or just see any changes people make.
Is there a best practice for things like this? Currently, I'm using a trigger on UPDATE to take the previous values and store them in a history table. This keeps track of who changes what, and when. Plus the most recent data is seperate and more performant to access.
I've also heard about putting an 'IsActive' flag on the main table and any changes that are made just get marked as In-Active and a new record gets added.
Any input?
Thanks!
Hi, i am trying to find a trigger that is updating a field in one of my tables.
I have a field called [ProfileDate], whenever a member is profiled, this field is populated with a GETDATE() value. I am trying to track down the trigger that updates this field.
Any help will be greatly appreciated
Kind Regards
Carel Greaves
Hi,
I have a bit of a problem I could do with some help with please...
I am updating an old windows client server app that uses ADO 2.8. Slowly but surely I am migrating the code from VB6 to .NET and this now means the ADO code is going to be replaced with ADO.NET.
As it is a client server the application used to establish an ADO connection and hold on to the connection for the entire duration of the app being alive. When a user signed in it would record the user logon code in a database table along with the current @@SPID value.
When the user does something in the application it typically usees an SP to do the database work. Inside the SP it also audits the work being carried out, of course the audit trail records the user id that did the work. The way it determines who called this SP is to query the logon table using the current @@SPID to get the users logon code (remember this was paired up when the user signed in).
This all worked very nicely as only one connection was ever being used and it was always the same connection that was used. However, when I come to use ADO.NET this is no longer valid. I want to use the connection pool and follow the best practices where my connections are always obtained as late as possible and released as soon as possible.
This leave me with the problem of how to get the current users logon code in to the SPs in order for them to continue writing the audit trail. Currently I am thinking that I am going to have to send the users code in to the SP as a parameter, I just wondered if there was an alternative.
Any help would be great.
Regards
Graham
Hi,
Does any one have any idea of how to track a user access to a spesfic DB because we have an old DB and we don't know if any body using it, I know Profiler can help but I need to know when it was the last time this DB has been accessed.
Thanks
Hi,
I have to monitor a stored procedure.
I would like to see how many time this sp is been called from the application and what was the response time?
And then I'd like to saggregate the results - say in 0-1 second x number of hits occured and then from 1-3secs y number of hits occured?
Any better way of doing this then to run a trace?I am not ina mood to run a trace cuz it's a prod.box.
TIA.
pd
Hi,
Full scans are bad, and I know this. I am seeing some on my database, and I know that some are unavoidable....but what I would like to do is find out which queries are causing them. I have over 500 users in my DB at any one time, and SQL Profiler doesn't seem to help me.....it shows me what objects are being scanned, but not if the scan is a full-scan or an index scan.
Does anyone have a way to find out what is causing my full scans?
Here is the situation. I have an employee who is making changes but I can't prove it. He thinks he knows more than he does and he's mess'n everything up. I would like to know if SQL or some third party product has the capability to see the change and log what was changed with the persons username attached?
View 1 Replies View RelatedTrying to determine a way to see if stored procedures are being used. I am not sure of a way to see when and if a stored procedure is being called although I have thought of using sp_recompile to set the stored procedure to recompile but I am not sure in which table that flag is set so I can see which ones were not recompiled. Any assistance or guidance would be appreciated. Thanks.
View 3 Replies View Related