StrataFrame Forum

Column tr_Schema does not belong to table DBETrigers

http://forum.strataframe.net/Topic19845.aspx

By Cory Cookson - 10/1/2008

Hello,



I'm trying to create a simple trigger on Delete using the Database Deployment ToolKit but when I attempt to deploy it I get:

Column tr_Schema does not belong to table DBETrigers



Have I missed something? The following is the body of the trigger. Thanks in advance for the help:





AFTER DELETE

AS

BEGIN



-- Prevent the result count from interfering

SET NOCOUNT ON;



-- Add trigger logic here

   if exists (Select 1 from Music m,deleted t

      where m.Artist_fk = t.Artist_pk)

      Begin

         goto error

      End

   return

error:

   raiserror 30006, 'Children exist in Music. Cannot delete this record'

END
By Trent L. Taylor - 10/3/2008

Cory,

I totally missed this post until just now...in the future don't be afraid to post a "bump" post if it has been more than a couple of days!

At any rate, it looks as though you have loaded a more recent version of the DDT but didn't update the StrataFrame structures.  Also, you will need to re-create your packages once the new update is installed as well as some of the column structures have changed.  It should be pretty straight forward:

  1. Load the new update and be sure to allow the data structures to be updated
  2. Go back into your DDT project and rebuild the deployment package
  3. You should be good to go at this point
By Cory Cookson - 10/6/2008

Hi Trent.

I re-ran the install making sure to let the database deployment happen and although it wiped out my business objects it didn't add the field to DBETriggers.



I also had another developer do a clean install and their local Strataframe DB does not have the field either.
By Trent L. Taylor - 10/7/2008

You are running an EXE that doesn't match the structure.  There is no longer a tr_Schema field in that table:

You can see the structure above.  I would recommend either download the install again and trying again (as I know that this is a solid build) or even trying the 1.6.7 beta.  This sounds like your DatabaseDTK.exe file is not being overridden which could be a permissions issue.  If you go into VS and click on the StrataFrame -> Version menu, it will show which EXE version you are running.  Also, you can see the structure for the DBETriggers table above.  So you have one or the other or both out of sync somehow.

By Cory Cookson - 10/14/2008

You are absolutley right.  It looks like when I upgraded the DDT get overwritten correctly for some reason.

Seems to be ok now.

Thank you very much for the help!

By Trent L. Taylor - 10/14/2008

Glad you got it figured out Smile
By Larry Caylor - 12/1/2008

I'm running the 1.6.7 beta release and I'm having the same problem when trying to deplpy a trigger. Attached is a screen shot of the software version and error.
By Larry Caylor - 12/1/2008

The error message that was displayed is misleading. There was an error in the trigger code that was preventing it from being deployed and not a missing column. Fixed the trigger and everything deployed OK.
By Larry Caylor - 12/1/2008

Spoke too soon. The DDT deletes triggers with no error message but I still get the error when trying to add a trigger.
By Trent L. Taylor - 12/2/2008

That column that is specified is no longer in use.  So either your data structures are not updated and that column still exists and/or the tr_schema column exists within your PKG file and just needs to be rebuilt.  So start by looking at your data structures in the StrataFrame database in teh DBETriggers table.  The structure should look like this:

By Larry Caylor - 12/2/2008

I checked DBETriggers and it contained the correct columns so I assumed that the problem had to be with DatabaseDTK.exe. Next I un-installed SF, re-booted, and re-installed SF. I had done this previously but this time I ran a search for DatabaseDTK.exe prior to installing and found a file named DatabaseDTK.exe-... in the Windows.Prefetch directory. I deleted the file, re-instaled SF, and everything now works as it shouldSmile Is it possbile that the file in Windows.Prefetch causes problems with the install?
By Trent L. Taylor - 12/2/2008

Is it possbile that the file in Windows.Prefetch causes problems with the install?

Yes.  It would change how the PKG file would be produced which would cause the DBEngine (DatabaseMigrator class) to fail.  So hopefully that was all it was!  If it is deploying now, then you should be in good shape.