Hello Andrew,

Welcome to the Firebird community.

>I can pump SQL statements through the application to make certain changes the 
>first time a new release is run (alter table etc) but am concerned at how I am 
>supposed to update SPs (potentially a large number) without access to the FB 
>server.  I considered extracting the metadata(FlameRobin), deleting 
>superfluous statements and pumping what is left through the app but that seems 
>like A LOT of work.


When modifying metadata, make sure everyone is logged out of your application. 
Although it’s possible to “do metadata stuff” with people connected, it’s not 
the preferred way.

When you want to change a large number of procedures and triggers, it’s 
certainly possible to simply re-create them, certainly the easiest.

However, when dropping, there will be dependencies from one procedure to 
another, so they have to be dropped in a specific order.

There’s an alternative, however:

1) drop all triggers (that call procedures)
2) alter all procedures to an empty body, this keeps the parameter signature in 
place
3) drop all procedure
4) create all procedures with an empty body to establish parameter signatures
5) alter all procedures with complete body
6) create all triggers

If you use a tool like our Database Workbench tool, you can alternatively 
compare your development to your production database and see what meta data has 
changed and extract a script, or automatically record a change script while 
doing all changes.

Or extract a script for all procedures that does these 
create-with-empty-body-and-then-alter-cycle.

Hope this helps.

With regards,

Martijn Tonies
Upscene Productions
http://www.upscene.com

Download Database Workbench for Oracle, MS SQL Server, Sybase SQL
Anywhere, MySQL, InterBase, NexusDB and Firebird!






I’m a bit of a FB noob and am after some advice about Stored Procedures and the 
best way to distribute them to client sites.

 

We are in the process of redeveloping our software using FB as the back end (it 
was previously ISAM).  We have a reasonably large client base and our 
application is installed on many sites which run independently.

 

We intend to make use of Stored Procedures, Triggers etc and between releases 
(during development) these objects will be created, dropped, modified etc.  I 
have been tasked with finding a solution to distribute the update/upgrade SP.

 

At the client end they will access the data via our application (via ODBC).  
They will have no direct access to the FB server and no ISQL command.    

 

I can pump SQL statements through the application to make certain changes the 
first time a new release is run (alter table etc) but am concerned at how I am 
supposed to update SPs (potentially a large number) without access to the FB 
server.  I considered extracting the metadata(FlameRobin), deleting superfluous 
statements and pumping what is left through the app but that seems like A LOT 
of work.

 

Also, do I bother with ‘alter procedure …..’ or do I simply drop them and 
(re)create them (after all, at release time, the SP is the SP)  

 

I am trying to automate the task as much as possible, I don’t want our support 
staff to have to intervene in an upgrade.

 

Surely I’m not the only one that has needed to do such a thing.  Does such a 
mechanism exist? Perhaps some suitable suggestions?

 


  • ... 'Andrew Zenz' and...@aimsoftware.com.au [firebird-support]
    • ... 'Martijn Tonies (Upscene Productions)' m.ton...@upscene.com [firebird-support]
      • ... 'Andrew Zenz' and...@aimsoftware.com.au [firebird-support]
        • ... Robert martin r...@chreos.com [firebird-support]
        • ... corni...@gmail.com [firebird-support]
        • ... Tim Ward t...@telensa.com [firebird-support]
          • ... 'Louis van Alphen' lo...@nucleo.co.za [firebird-support]
            • ... laf...@xietel.com [firebird-support]
          • ... laf...@xietel.com [firebird-support]
        • ... Svein Erling Tysvær svein.erling.tysv...@kreftregisteret.no [firebird-support]
        • ... 'Martijn Tonies (Upscene Productions)' m.ton...@upscene.com [firebird-support]
    • ... 'Louis van Alphen' lo...@nucleo.co.za [firebird-support]

Reply via email to