details: /erp/devel/pi/rev/f6316be65fe7
changeset: 8452:f6316be65fe7
user: Antonio Moreno <antonio.moreno <at> openbravo.com>
date: Tue Sep 28 11:09:22 2010 +0200
summary: Related to issue 14642. Readded the view so that
ad_script_disable/enable_triggers still work, but with a small change so that
it works in PostgreSQL 8.4 and 9.0
diffstat:
src-db/database/model/postscript-PostgreSql.sql | 2 -
src-db/database/model/prescript-PostgreSql.sql | 37 +++++++++++++++++++++++++
2 files changed, 37 insertions(+), 2 deletions(-)
diffs (68 lines):
diff -r f2c30fd7b2f8 -r f6316be65fe7
src-db/database/model/postscript-PostgreSql.sql
--- a/src-db/database/model/postscript-PostgreSql.sql Mon Sep 27 10:13:22
2010 +0200
+++ b/src-db/database/model/postscript-PostgreSql.sql Tue Sep 28 11:09:22
2010 +0200
@@ -23,7 +23,6 @@
BEGIN
FOR Cur_Triggers IN (SELECT OBJECT_NAME AS NAME, TABLE_NAME
FROM USER_OBJECTS
- WHERE OBJECT_TYPE = 'TRIGGER'
ORDER BY OBJECT_NAME) LOOP
v_seqNo := v_seqNo + 1;
-- INSERT INTO AD_SCRIPT_SQL VALUES (v_seqNo, 'ALTER TRIGGER
'||Cur_Triggers.NAME||' DISABLE');
@@ -96,7 +95,6 @@
BEGIN
FOR Cur_Triggers IN (SELECT OBJECT_NAME AS NAME, TABLE_NAME
FROM USER_OBJECTS
- WHERE OBJECT_TYPE = 'TRIGGER'
ORDER BY OBJECT_NAME) LOOP
v_seqNo := v_seqNo + 1;
-- INSERT INTO AD_SCRIPT_SQL VALUES (v_seqNo, 'ALTER TRIGGER
'||Cur_Triggers.NAME||' ENABLE');
diff -r f2c30fd7b2f8 -r f6316be65fe7
src-db/database/model/prescript-PostgreSql.sql
--- a/src-db/database/model/prescript-PostgreSql.sql Mon Sep 27 10:13:22
2010 +0200
+++ b/src-db/database/model/prescript-PostgreSql.sql Tue Sep 28 11:09:22
2010 +0200
@@ -1155,8 +1155,45 @@
ORDER BY table_name, index_name, column_position
/-- END
+SELECT * FROM drop_view('USER_OBJECTS')
+/-- END
+CREATE or REPLACE function create_user_objects() returns varchar as '
+DECLARE
+ cnt int4;
+BEGIN
+ SELECT into cnt count(*) from version() where version like ''%PostgreSQL
9.%'';
+ if cnt > 0 then
+ execute ''CREATE OR REPLACE VIEW USER_OBJECTS
+(TABLE_NAME, OBJECT_NAME, OBJECT_ID)
+AS
+SELECT UPPER(PG_CLASS.RELNAME), UPPER(PG_TRIGGER.TGNAME), PG_TRIGGER.TGFOID
+FROM PG_TRIGGER, PG_NAMESPACE, PG_CLASS
+WHERE PG_TRIGGER.TGRELID = PG_CLASS.OID
+AND PG_TRIGGER.TGISINTERNAL = FALSE
+AND PG_CLASS.RELNAMESPACE = PG_NAMESPACE.OID
+AND PG_NAMESPACE.NSPNAME = CURRENT_SCHEMA()'';
+else
+execute ''CREATE OR REPLACE VIEW USER_OBJECTS
+(TABLE_NAME, OBJECT_NAME, OBJECT_ID)
+AS
+SELECT UPPER(PG_CLASS.RELNAME), UPPER(PG_TRIGGER.TGNAME), PG_TRIGGER.TGFOID
+FROM PG_TRIGGER, PG_NAMESPACE, PG_CLASS
+WHERE PG_TRIGGER.TGRELID = PG_CLASS.OID
+AND PG_TRIGGER.TGISCONSTRAINT = FALSE
+AND PG_CLASS.RELNAMESPACE = PG_NAMESPACE.OID
+AND PG_NAMESPACE.NSPNAME = CURRENT_SCHEMA()'';
+ end if;
+ return null;
+END;'
+language 'plpgsql'
+/-- END
+SELECT * FROM create_user_objects()
+/-- END
+
+DROP FUNCTION create_user_objects()
+/-- END
SELECT * FROM drop_view('USER_CONS_COLUMNS')
/-- END
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits