See More

CREATE SCHEMA sqlj; GRANT USAGE ON SCHEMA sqlj TO public; CREATE FUNCTION sqlj.java_call_handler() RETURNS language_handler AS 'pljava' LANGUAGE C; CREATE TRUSTED LANGUAGE java HANDLER sqlj.java_call_handler; CREATE FUNCTION sqlj.javau_call_handler() RETURNS language_handler AS 'pljava' LANGUAGE C; CREATE LANGUAGE javaU HANDLER sqlj.javau_call_handler; CREATE TABLE sqlj.jar_repository( jarId SERIAL PRIMARY KEY, jarName VARCHAR(100) UNIQUE NOT NULL, jarOrigin VARCHAR(500) NOT NULL, jarOwner NAME NOT NULL, jarManifest TEXT, deploymentDesc INT ); GRANT SELECT ON sqlj.jar_repository TO public; CREATE TABLE sqlj.jar_entry( entryId SERIAL PRIMARY KEY, entryName VARCHAR(200) NOT NULL, jarId INT NOT NULL REFERENCES sqlj.jar_repository ON DELETE CASCADE, entryImage BYTEA NOT NULL, UNIQUE(jarId, entryName) ); GRANT SELECT ON sqlj.jar_entry TO public; ALTER TABLE sqlj.jar_repository ADD FOREIGN KEY (deploymentDesc) REFERENCES sqlj.jar_entry ON DELETE SET NULL; CREATE TABLE sqlj.classpath_entry( schemaName VARCHAR(30) NOT NULL, ordinal INT2 NOT NULL, jarId INT NOT NULL REFERENCES sqlj.jar_repository ON DELETE CASCADE, PRIMARY KEY(schemaName, ordinal) ); GRANT SELECT ON sqlj.classpath_entry TO public; CREATE TABLE sqlj.typemap_entry( mapId SERIAL PRIMARY KEY, javaName VARCHAR(200) NOT NULL, sqlName NAME NOT NULL ); GRANT SELECT ON sqlj.typemap_entry TO public; CREATE FUNCTION sqlj.install_jar(VARCHAR, VARCHAR, BOOLEAN) RETURNS void AS 'org.postgresql.pljava.management.Commands.installJar' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.install_jar(BYTEA, VARCHAR, BOOLEAN) RETURNS void AS 'org.postgresql.pljava.management.Commands.installJar' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.replace_jar(VARCHAR, VARCHAR, BOOLEAN) RETURNS void AS 'org.postgresql.pljava.management.Commands.replaceJar' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.replace_jar(BYTEA, VARCHAR, BOOLEAN) RETURNS void AS 'org.postgresql.pljava.management.Commands.replaceJar' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.remove_jar(VARCHAR, BOOLEAN) RETURNS void AS 'org.postgresql.pljava.management.Commands.removeJar' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.set_classpath(VARCHAR, VARCHAR) RETURNS void AS 'org.postgresql.pljava.management.Commands.setClassPath' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.get_classpath(VARCHAR) RETURNS VARCHAR AS 'org.postgresql.pljava.management.Commands.getClassPath' LANGUAGE java STABLE SECURITY DEFINER; CREATE FUNCTION sqlj.add_type_mapping(VARCHAR, VARCHAR) RETURNS void AS 'org.postgresql.pljava.management.Commands.addTypeMapping' LANGUAGE java SECURITY DEFINER; CREATE FUNCTION sqlj.drop_type_mapping(VARCHAR) RETURNS void AS 'org.postgresql.pljava.management.Commands.dropTypeMapping' LANGUAGE java SECURITY DEFINER;