Subject Re: [Firebird-Architect] Re: Java Stored Procedures
Author Martijn Tonies
> > btw, Oracle does have a "CREATE JAVA" statement :-)
>
> Yes, Oracle can store the .class files in the database. I still have
> to investigate that further. From a cursory glance, I'd say that all
> that it does is storing each .class file in a blob and on the fly
> retrieving/storing that into a configured directory which is in the
> configured classpath.
>
> For me it is *not* a priority, but adding a RDB$JAVA table, with
> name, source and bytecode would be an option. If the plugin cannot
> find the class, it looks it up in this table. If found, it moves the
> code into a classpath directory and tries again. If the name is not
> in the table either, or the code blob is null it reports 'not found'.
>
> The create statement would take source and compile it using an
> external java compiler. If the compile fails, it stores a NULL in the
> code blob. It would need to clear the relevant class from the cache
> directory of course.
>
> The jvm.conf would need to include settings for the cache directory
> and for the java compiler path. The classpath setting should
> (automatically?) include the cache directory.
>
> The RDB$JAVA table could be created on the fly when first referenced
> by the SQL compiler and/or the meta data system.
>
> The big advantage of such a setup would be that databases remain self-
> contained ("xcopy installable").

Yep. I like that. I like having all source in the database :-)

With regards,

Martijn Tonies
Database Workbench - tool for InterBase, Firebird, MySQL, Oracle & MS SQL
Server
Upscene Productions
http://www.upscene.com
Database development questions? Check the forum!
http://www.databasedevelopmentforum.com