How Can I Set A Update Trigger On A Table In Database A After A Record Had Been Updated From Another Database B?
Jan 22, 2008
Hi guys, may I know is it possible to create an update trigger like this ? Assuming there are two database, database A and database B and both are having same tables called 'Payments' table. I would like to update the Payments records on database A automatically after Payments records on database B had been updated. I can't use replication because both tables might having different records and some records are the same. Hope can get any assistance here, thank you.
Im using a trigger to check updates on particular table and execute a email. it works but it doesnt show the right record im looking into one table called SiteInfo. here is my code Im using sql 2005, can someone look at my code or the select statement.
I want to retrieve the last update time of database. Whenever any update or delete or insert happend to my database i want to store and retrieve that time.
I know one way is that i have to make a table that will store the datetime field and system trigger / trigger that can update this field record whenever any update insert or deletion occur in database.
But i don't know exactly how to do the coding for this?
Am in a small fix. my Trigger is updating my entire table records , i don't want that, i want to update a column in the record that is updated by my application using a trigger that tracks updates on that table.
Is there a way i can track the updated record on my table and then update a field in that record through my TRIGGER?
My database is MSSQLServer2005 Enterprise Edition..
Below is my code
CREATE TRIGGER [TR_Employee] ON [Test_1_1].[dbo].[Employee] For UPDATE Not For Replication AS BEGIN
Update Employee set Last_Changed = (select getDate())
Stepping thru the code with the debugger shows the dataset rows being deleted.
After executing the code, and getting to the page presentation. Then I stop the debug and start the page creation process again ( Page_Load ). The database still has the original deleted dataset rows. Adding rows works, then updating works fine, but deleting rows, does not seem to work.
The dataset is configured to send the DataSet updates to the database. Use the standard wizard to create the dataSet.
cDependChildTA.Fill(cDependChildDs._ClientDependentChild, UserId); rowCountDb = cDependChildDs._ClientDependentChild.Count; for (row = 0; row < rowCountDb; row++) { dr_dependentChild = cDependChildDs._ClientDependentChild.Rows[0]; dr_dependentChild.Delete(); //cDependChildDs._ClientDependentChild.Rows.RemoveAt(0); //cDependChildDs._ClientDependentChild.Rows.Remove(0); /* update the Client Process Table Adapter*/ // cDependChildTA.Update(cDependChildDs._ClientDependentChild); // cDependChildTA.Update(cDependChildDs._ClientDependentChild); } /* zero rows in the DataSet at this point */ /* update the Child Table Adapter */ cDependChildTA.Update(cDependChildDs._ClientDependentChild);
I am creating update trigger(After) on a table.I want to catch an updated row and insert the values of this row into a new table.How can i catch this row while creating a trigger after update.
I want to update several columns in different tables whenever an update is happend on specific table. I have a trigger for that which update all the relevant places when it fires.
I want to do this update only if certains columns were changed, otherwise - do anything, to reduce performance.
How Can I know which columns were updated inside the trigger? The tables has many columns and only if 2 of them were changed then I need to update other tables.
I need a trigger to set the creation date of a new record in the database... I tried the following, but it changed all records, not just the new one...
CREATE TRIGGER trgCreationDate ON [dbo].tabCustomerLookup FOR INSERT AS BEGIN UPDATE tabCustomerLookup SET CreationDate = getdate() END
I am new to connecting to databases through java and in fact have not done much database programming although I am fairly good at SQL. I have used the MS JDBC driver to connect to a MS SQL server database but I want to update my application every time a record is added to the database and or alert the user. From what I have read, i assume that I can create a Trigger in java but how do I get my trigger to call a method / run java code?
I was stuck when update database using SqlDataAdapter. I have several textboxes in my webform1. When wepform1 is loaded, they will display user's information. The user can only input content in two textboxes. When user clicks the update button, I hope to update this record in SQL Server 2000 database. However, the program didn't work. There was no error message reported but when I stepped into the code, I found out that dataadapter's update method didn't succeed. I got 0 rows affected. Can I get some advice from someone ?
Here is the code:
string StrUpdateCmd = "Update Table1 Set Hphone = @Hphone, Cphone = @Cphone, Team = @Team Where emailname =@emailname ";
SqlDataAdapter UpdateDa = new SqlDataAdapter("Select * from Table1",SqlConnection1); UpdateDa.UpdateCommand = new SqlCommand(StrUpdateCmd, SqlConnection1);
//Update database int ret =UpdateDa.Update(dataset2,"Table1"); if( ret == 1 ) { ShowMessage("Update succeed!"); } else { ShowMessage("There is an error in updating "); }
Hi SQL fans,I realized that I often encounter the same situation in a relationdatabase context, where I really don't know what to do. Here is anexample, where I have 2 tables as follow:__________________________________________ | PortfolioTitle|| Portfolio |+----------------------------------------++-----------------------------+ | tfolio_id (int)|| folio_id (int) |<<-PK----FK--| tfolio_idfolio (int)|| folio_name (varchar) | | tfolio_idtitle (int)|--FK----PK->>[ Titles]+-----------------------------+ | tfolio_weight(decimal(6,5)) |+-----------------------------------------+Note that I also have a "Titles" tables (hence the tfolio_idtitlelink).My problem is : When I update a portfolio, I must update all theassociated titles in it. That means that titles can be either removedfrom the portfolio (a folio does not support the title anymore), addedto it (a new title is supported by the folio) or simply updated (atitle stays in the portfolio, but has its weight changed)For example, if the portfolio #2 would contain :[ PortfolioTitle ]id | idFolio | idTitre | poids1 2 1 102 2 2 203 2 3 30and I must update the PortfolioTitle based on these values :idFolio | idTitre | poids2 2 202 3 352 4 40then I should1 ) remove the title #1 from the folio by deleting its entry in thePortfolioTitle table2 ) update the title #2 (weight from 30 to 35)3 ) add the title #4 to the folioFor now, the only way I've found to do this is delete all the entriesof the related folio (e.g.: DELETE TitrePortefeuille WHERE idFolio =2), and then insert new values for each entry based on the new givenvalues.Is there a way to better manage this by detecting which value has to beinserted/updated/deleted?And this applies to many situation :(If you need other examples, I can give you.thanks a lot!ibiza
I am just a very beginner on using trigger. I get 2 databases A and B. When there is update on A, a trigger will be made on updating B.
here is the trigger i wrote
CREATE trigger update_master_add_charge on master_addition_charge for update as update B.master_addition_charge set (acm_desc=?, curr_id=?, charge=?, acm_flag=?, void_flag=?)
the ? should be the value in A... but what shall i write on that?
I am a newbie creating triggers and I would like to know what is the name of the updated logical table. That is, since the are identifiers like "inserted" and "deleted" that represent the inserted and deleted rows, respectivaly, I presumed that "updated" existed - but it does not.
I have a table with a column named "UpdatedTimeStamp" which I would like to update anytime the other columns are modified. I intended to create the following trigger:
create trigger myTrigger on myTable after update as
update updated set UpdateTimeStamp=GetDate()
Of course, "updated" is not a valid identifier that represents the updated row.
Please, help me in creating this trigger. What is the correct way of doing a trigger like this?
I am using two database server. Both are sql server.
My task is :I want to insert data from server 1 table to server 2 table and update same when modified the existing data from server 1. is it possible to do the integration in single package.
I know to do insert and update seperately by ssis but need to do same with single task.
Hi All, I am using a trigger. I want to get the data of a row before updating inside this trigger and insert it into a backup table. Please anybody help me. Example with code is highly appreciated.
I am having a hard time understanding triggers. My goal is to put a trigger on table x where records are UPDATED or DELETED. When this trigger fires I need to take the record ID and put the ID modified record into table y with the date modified. so basically logging the recordid changed with the getDate()
I don't quite understand how to get the rowid of the modified record.
,I am creating a database where each record is required to have a twin record in the database.These is a type a value and a type b value and both must be present for the record to be valid.
Customer_ID, Order_Type, Product_Code 54, a, 00345 54, b, 00356
Is this something that would have to be done programmatically, or is it possible to create a constraint of some sort to ensure this?
I wanted to know if it is possible to run a stored proc (report) when a new record is inserted / updated into a certain table. Also if it could do so for records with a column that meet a certain criteria ie. sell description like '%test%'
Hello, I am using SQL Server 2005 and ASP.NET 2.0. We have a very simple content management system where we have to keep track of date last modified for each row in all of our content tables. I know there's a "timestamp" datatype that is used for replication scenarios, but is there anything similar that I can use to set up a date_modified column for each of my content tables that will automatically update with GETDATE() whenever anything in a given row is updated? Or do I have to create a date_modified column of smalldatetime datatype and write a trigger on update for EVERY single table of content that I have in the database? It seems there should be an easier way to do this than to write 20 triggers for my 20 content tables. Thanks!
here is my trigger that i have right now the only problem is that it deletes the records before copying everything into the db i dont what do delete everything i just whant to catch the updated record and then update the other tables same record in the other db how would i do this:
right now i have this
CREATE TRIGGER test ON [dbo].[TEST123] AFTER INSERT, UPDATE, DELETE AS IF @@ROWCOUNT = 0 RETURN
IF (COLUMNS_UPDATED() & 2 = 2) DELETE FROM pubs..TEST123 WHERE test3 = '300' INSERT INTO pubs..TEST123 SELECT * FROM TEST123 WHERE test3 = '300' UPDATE pubs..TEST123 SET test1 = 'X' WHERE test1 IS NULL AND test3 = '300' UPDATE pubs..TEST123 SET test2 = 'X' WHERE test2 IS NULL AND test3 = '300' UPDATE pubs..TEST123 SET test3 = 'X'
Hello All,I have 2 tables in a MS SQL DB. Table1 and Table2.LogTable2.Log was a copy of Table1 + an extra column for date_deleted. Ihave 2 Triggers on Table1, Insert and delete. So when a record isinserted into Table1 it's copied onto Table2.log, and when deleted inTable1 the same record in Table2.log is time stamped with time ofdeletion.I would like to have another Trigger on Table1 for update. So if acertain field (not primary key) is updated for a record it is alsoupdated in Table2.log This way Table2.log will always have exactly thesame fields per record as Table1.I'm not sure how to reference the modified records only and updatejust the modified fields...something like...?----------------------------CREATE TRIGGER [tr_updateT_Log] ON [dbo].Table1FOR UPDATEASUpdate Table2.LogSET description = , office =-------------------------------------------------Any help would be greatly appreciatedThanksY
I am looking to created a trigger that inserts records into a log table to show the stored porcedure that has updated a specific column to a specific value in a specific table
At present I have:
CREATE TRIGGER [dbo].[trUpdaterTable] ON [dbo].[t_account]-- A DB level trigger FOR UPDATE --Event we want to capture AS IF update (document_status)
[Code] ...
However this doesn't appear to bring back the procedure that triggered the update...
The value the trigger should update on is document_status = 0
I have a parent table with 27 Columns and Child Table with 37 colums - when even there is an update in any of the columns on Parent or Child table, I require new record inserted into Audit_Parent and Audit_child table. Please help with SQL Code on Create Trigger and insert records into Audit_parent and Audit_child when an Update occurs on any of the columns. Insert into AuditParent and AuditChild should occur whenever there is an update on either Parent or child table.
Hi everybody.. need help on this situation which i am to.
I have two databases named db1 and db2 both of which has two identical tables named tbl1 and tbl2
I need to compare tbl1 of db1 to the tbl2 of db2 if there is a record that is existing on tbl1 and not on the tbl2 then i need to create a tblnew on db2 from that tblnew then i need to append all the data from tblnew to tbl2 of db2.
I don't know how to start with it because i'm used to appending data on two tables on the same database but not on a different one...
I am new to SQL and these forums, so please bear with me :)
My basic question is if I can create a update trigger that will pull info from another record in the same table if data in certain fields match the existing record.
An example:
The user creates a new record. If said user enters data in specified fields that matches data in the same fields in another record in the same table, can a update trigger be used to fill out the rest of this record with the data from the record that matches?
If you need more Info on my problem, ask and I will try to explain better. There may be a better way of doing this than using a trigger, but I am not sure. The fields that I would use to match the data would not be the primary key fields.
Got a question here and as I am no expert programmer, this should be easy for you gurus. I have this fairly generic code I've created where I return data from an SQL table in a DataList control. I want to take it to the next level and return only the last record in the table, but I am unsure of how to do that. Perhaps I shouldn't even be using a DataList control, I'm not sure.