Subject | Re: [firebird-support] Re: alter in stored procedure |
---|---|
Author | Martijn Tonies |
Post date | 2003-10-03T09:41:05Z |
Hi Alexander,
Conference,
ensured me it was possible and that he uses it a lot.
Pandora's Box - may be, but if it's possible, it's possible.
With regards,
Martijn Tonies
Database Workbench - developer tool for InterBase, Firebird & MS SQL Server.
Upscene Productions
http://www.upscene.com
> > > can i do this?I first thought this wasn't allowed - but Nickolay, at the Firebird
> > >
> > > CREATE PROCEDURE sp_test
> > > (tabname VARCHAR(24), colname VARCHAR(24), datatype VARCHAR(24))
> > > AS
> > > BEGIN
> > > ALTER TABLE :tabname ADD :colname :datatype;
> > > END
> > >
> > > how can i alter table (add new columns) in stored procedure?
> >
> > You can't.
> >
> > Unless you're using Firebird 1.5 and use EXECUTE STATEMENT -
> > this allows you to dynamically create an SQL statement and execute
> > it.
>
> Martijn, did you tried this youself? I'm afraid this is Pandora's
> Box. All my experience says metadata changes is not performed entirely
> under general transactional logic. And I intentionally recommend don't
> work with uncommited metadata changes even in the same transaction,
> what is assumed when metadata is changed within SP.
Conference,
ensured me it was possible and that he uses it a lot.
Pandora's Box - may be, but if it's possible, it's possible.
With regards,
Martijn Tonies
Database Workbench - developer tool for InterBase, Firebird & MS SQL Server.
Upscene Productions
http://www.upscene.com