- or
1 result found
-
Support for Queue Tables
Please add support or the ability to find Queue tables.
12 votesThis was released in V5.7.11
128 results found
-
Ignore SQL script files that fail to parse
Add an option to ignore SQL files that fail to parse when the target is a Scripts Folder.
I would like this, such that the tool can do autonomous exports without it crashing if the target contains valid but unsupported SQL like
"DROP VIEW viewname
CREATE OR REPLACE viewname"1 vote -
Option ILM POLICY
Help, please, I compare tables but do not see ILM POLICY.
The ILM POLICY option is enabled.Script:
CREATE TABLE salesado
(PRODID NUMBER NOT NULL,
CUSTID NUMBER NOT NULL,
TIMEID DATE NOT NULL,
CHANNELID NUMBER NOT NULL,
PROMOID NUMBER NOT NULL,
QUANTITYSOLD NUMBER(10,2) NOT NULL,
AMOUNTSOLD NUMBER(10,2) NOT NULL)
PARTITION BY RANGE (timeid)
( PARTITION salesq12012 VALUES LESS THAN (TODATE('01-APR-2012','dd-MON-yyyy')),
PARTITION salesq22012 VALUES LESS THAN (TODATE('01-JUL-2012','dd-MON-yyyy')),
PARTITION salesq32012 VALUES LESS THAN (TODATE('01-OCT-2012','dd-MON-yyyy')),
PARTITION salesq42012 VALUES LESS THAN (TO_DATE('01-JAN-2013','dd-MON-yyyy'))
);ALTER TABLE salesado MODIFY PARTITION salesq1_2012
ILM ADD POLICY ROW STORE COMPRESS ADVANCED ROW
AFTER 30 DAYS OF NO MODIFICATION;
COMMIT;ALTER TABLE salesado MODIFY PARTITION salesq2_2012
ILM ADD POLICY ROW STORE COMPRESS ADVANCED SEGMENT
AFTER 3 MONTHS OF NO MODIFICATION;
COMMIT;ALTER TABLE salesado MODIFY PARTITION salesq3_2012
ILM ADD POLICY ROW STORE COMPRESS ADVANCED GROUP
AFTER 6 MONTHS OF NO MODIFICATION;
COMMIT;Help, please, I compare tables but do not see ILM POLICY.
The ILM POLICY option is enabled.Script:
CREATE TABLE salesado
(PRODID NUMBER NOT NULL,
CUSTID NUMBER NOT NULL,
TIMEID DATE NOT NULL,
CHANNELID NUMBER NOT NULL,
PROMOID NUMBER NOT NULL,
QUANTITYSOLD NUMBER(10,2) NOT NULL,
AMOUNTSOLD NUMBER(10,2) NOT NULL)
PARTITION BY RANGE (timeid)
( PARTITION salesq12012 VALUES LESS THAN (TODATE('01-APR-2012','dd-MON-yyyy')),
PARTITION salesq22012 VALUES LESS THAN (TODATE('01-JUL-2012','dd-MON-yyyy')),
PARTITION salesq32012 VALUES LESS THAN (TODATE('01-OCT-2012','dd-MON-yyyy')),
PARTITION salesq42012 VALUES LESS THAN (TO_DATE('01-JAN-2013','dd-MON-yyyy'))
);ALTER…
1 vote -
more features to add in interactive report html
Hi, i have a question about interactive html report file. Maybe it is possible to add buttons in it like in schema compare for jumping between changes, because now its not really comfortable to navigate, when you have to scroll and find one change on big file. And finally you find that there is the difference only on space or tab. Also maybe it is possible to have alignment of code not on left side, but like in database - that spaces, tabs wouldn't be removed.
Here is the link where i got answered to this question. But he just said to register this question here:
https://forum.red-gate.com/discussion/comment/168797#Comment_168797
Hi, i have a question about interactive html report file. Maybe it is possible to add buttons in it like in schema compare for jumping between changes, because now its not really comfortable to navigate, when you have to scroll and find one change on big file. And finally you find that there is the difference only on space or tab. Also maybe it is possible to have alignment of code not on left side, but like in database - that spaces, tabs wouldn't be removed.
Here is the link where i got answered to this question. But he just…
1 vote -
object history
I would like to have the option (like in TortoiseSVN) to be able to check all revisions in which the indicated object was changed (either by name or by click). The history of the specified object would be very helpful.
1 voteCurrently, in the tool, we only show all the history. If you use TortoiseSVN or another VCS client or command line, you can see the history for a particular object by locating that object's file in the repository and viewing that file's history.
-
Add support for ANALYTIC VIEWS objects
Currently the Schema compare for ORACLE doesnt support the below objects.
1. ATTRIBUTE DIMENSION
2. HIERARCHY
3. ANALYTIC VIEWThese have been available since Oracle12c. It would be nice for redgate to support all the Oracle object types from the latest database versions.
1 vote -
Locking and unlocking the objects in Oracle
Hi Team,
Lock and unlock the objects in oracle. Anyone can unlock and lock the objects, but our requirement it's should be configurable. some admin or some user has control to unlock the objects.
For example, User ABC Locked the EMP tables currently anyone can unlock the objects but it's should either ABC user need to unlock or give some admin user to unlock the objects. We need to some control required to maintain the locking and unlocking the objects and there is no audit info as well.
3 votes -
Virtual Columns Should Be Ignored By Default
Since you can't update the values, why compare them in the first place?
3 votes -
Add the ability to build without a target database
The Azure DevOps extensions for SQL Server allow you to build the solution on check-in of new code without needing a target database to build against. Having similar extensions with this ability for Oracle to match what we can do with SQL Server would be fantastic.
3 votes -
Add support for DBMS_RLS objects such as Packages and Contexts
We use DBMSRLS to filter data based on the Oracle Context object. The context is set using a login script which is then used as part of a table policy. More information is available at https://docs.oracle.com/cd/E2469301/appdev.11203/e23448/d_rls.htm#i1004716.
1 vote -
Foreign Keys not included in comparison if referenced table is excluded by the Ignore Rules Filter
This presents a problem for fully capturing table DDL definitions that are selected for the comparison
It is not immediately clear, and may be difficult to detect that FKs are excluded / failed to be captured, unless a full / unfiltered schema comparison is performed.
There is no indication that the FKs are suppressed and no setting will include them.
Are there any Schema Compare for Oracle and / or Source Control for Oracle users who would like to see the FK keys that reference Ignored Tables to be included in the deployment script or recorded in the DDL for the table? Or at least be warned that the referencing object is listed in the Ignore Rules?
This presents a problem for fully capturing table DDL definitions that are selected for the comparison
It is not immediately clear, and may be difficult to detect that FKs are excluded / failed to be captured, unless a full / unfiltered schema comparison is performed.
There is no indication that the FKs are suppressed and no setting will include them.
Are there any Schema Compare for Oracle and / or Source Control for Oracle users who would like to see the FK keys that reference Ignored Tables to be included in the deployment script or recorded in the DDL for…
4 votes -
Include option to create refresh groups (like Refresh Group X)
Would be nice to be able to include projects into fresh groups -- so group or similar projects could be refreshed together.
Individual refreshes may become tedious, and the Refresh All may be too broad.
Alt as a simpler implementation provide the ability to exclude projects from a bulk (Refresh All) -- e.g. by marking a project as inactive.
Example:
If I have 15 projects total:
- 5 defined as belong to Group A,
- 4 belong to Group B,
- 4 are unaffiliated
- 2 are inactiveWould like to be able to:
- refresh Group A (project count: 5)
- refresh Group B (project count: 4)
- Refresh All (project count: 13)Would be nice to be able to include projects into fresh groups -- so group or similar projects could be refreshed together.
Individual refreshes may become tedious, and the Refresh All may be too broad.
Alt as a simpler implementation provide the ability to exclude projects from a bulk (Refresh All) -- e.g. by marking a project as inactive.
Example:
If I have 15 projects total:
- 5 defined as belong to Group A,
- 4 belong to Group B,
- 4 are unaffiliated
- 2 are inactiveWould like to be able to:
- refresh Group A (project count:…3 votes -
Project Display Order
Allow for manual ordering (e.g. drag and drop and/or move up / move down functionality) for Source Control Projects (vs. by name only)
3 votes -
QA department demand, according GMP rules, for proof of same data export-import
Our QA department will need proof to show that the exported Oracle 11 data is the same when imported to Oracle 12 due to the strict GMP regulations that we need to be compliant with as pharmaceutical production facility.
As the Oracle database is part of software from a vendor we don’t do any development with Oracle. We only need the Oracle data compare tool for making sure that with the upgrade of software, the Oracle 11 data is the same as the imported data in Oracle 12 (before the new software will be installed).
The Oracle compare tool has a main focus on developers, but we need it as QA compliant compare tool.A minor issue is when a table only has 1 column and that column is data type “Blob” than it is not able to compare (as also no comparison key can be set).
Redgate's standpoint:
For Data Compare for Oracle to be able to compare rows of data in tables it requires a comparison key so it can unique identify each row. In regards to 'BLOB' and 'CLOB' data, the size of data for a single row can be ridiculously large in size, therefore it is not good idea to use 'BLOB' and 'CLOB' data column as a comparison key. Hence why you cannot use 'BLOB' and 'CLOB' columns as the comparison key.To make the Redgate tool QA and GMP compliant we wish to see these types of tables also to be comparable without the need of a comparison key (and maybe a special licensed version without all the great developer tools/options as we will not use those in this case).
Our QA department will need proof to show that the exported Oracle 11 data is the same when imported to Oracle 12 due to the strict GMP regulations that we need to be compliant with as pharmaceutical production facility.
As the Oracle database is part of software from a vendor we don’t do any development with Oracle. We only need the Oracle data compare tool for making sure that with the upgrade of software, the Oracle 11 data is the same as the imported data in Oracle 12 (before the new software will be installed).
The Oracle compare tool has…3 votes -
DataMasker for Oracle - Improvement for Range Split rules
Hi,
When Using a Range Splitted Rule and one wants to auto generate the different ranges, damasker is launching following query (I will write just an example):
Select MIN(NUMERICFIELD) from MyTableToBeSplitted
UNION ALL
Select MAX(NUMERICFIELD) from MyTableToBeSplittedThis will involve reading table twice (being the default plan through FULL TABLE ACCESS or INDEX).
Talking about big tables (which are the favourite target for Range Splitted Rules), this is too much time.Instead, perhaps query could be changed to the following:
Select MIN(NUMERICFIELD) , MAX(NUMERICFIELD) from MyTableToBeSplitted
This will improve time spent, reducing it by a 50% as table will only be read once.
Thanks in advance,
Hi,
When Using a Range Splitted Rule and one wants to auto generate the different ranges, damasker is launching following query (I will write just an example):
Select MIN(NUMERICFIELD) from MyTableToBeSplitted
UNION ALL
Select MAX(NUMERICFIELD) from MyTableToBeSplittedThis will involve reading table twice (being the default plan through FULL TABLE ACCESS or INDEX).
Talking about big tables (which are the favourite target for Range Splitted Rules), this is too much time.Instead, perhaps query could be changed to the following:
Select MIN(NUMERICFIELD) , MAX(NUMERICFIELD) from MyTableToBeSplitted
This will improve time spent, reducing it by a 50%…
1 vote -
Grants are not detected correctly when logged in as proxy user.
Please support proxy users. They allow people to impersonate another user which is useful for all kinds of purposes regarding security and auditing.
So, I got this user called MyUserName which can act as a proxy user for OurSchema. To log in, I useMyUserName[OurSchema]
as the username (and my own password). Then I can make modifications to OurSchema and basically work as if I'm logged in as OurSchema.
This works well in any tool. In Schema Compare it almost works, but there seems to be an issue with the grants. The grants are not detected, so when I run SC with a proxy user, I suddenly get about 3000 differences.Please support proxy users. They allow people to impersonate another user which is useful for all kinds of purposes regarding security and auditing.
So, I got this user called MyUserName which can act as a proxy user for OurSchema. To log in, I useMyUserName[OurSchema]
as the username (and my own password). Then I can make modifications to OurSchema and basically work as if I'm logged in as OurSchema.
This works well in any tool. In Schema Compare it almost works, but there seems to be an issue with the grants. The grants are not detected, so when I run…1 vote -
constraints are not treated as seperate objects in oracle schema compare
constraints are not treated as separate objects in oracle schema compare,
without that, how can we compare constraints alone in a database ?
1 vote -
Support object tables
CREATE TABE FOO of BAR
If I create a table (FOO) of an object type (BAR), this table is not picked up by schema compare. This is probably because it's not listed in USERTABLES, but in USEROBJECT_TABLES.
1 vote -
Add Error Handling to PL/SQL Blocks
Currently when using Data Compare for Oracle 4 if any INSERT/UPDATE throws an error in a PL/SQL block the entire block fails. Because of this the company I work for will not use the software for DML deployments. If Redgate could code error handling for each table or each block where the script will continue to update/insert SQL data even in the event of an error the software would be much more usable, robust, and practical. Thank-you for reading this. :) Please add error-handling to the DML code that is generated in the diff/sync scripts.
1 vote -
Multi-Select for conflict resolution
Ability to tick multiple items and resolve when faced with lots of conflicts
1 vote -
Synonym Handling w/ "Exclude Schema Names" option Enabled
With the “Exclude Schema Names” option enabled, SCO identifies false-positive mismatches for public synonyms.
In Oracle public synonym DDL w/o owner specified defaults the object owner to current user.
CREATE PUBLIC SYNONYM foo_bar FOR bar
/SELECT *
FROM allsynonyms
WHERE synonymname = 'FOO_BAR'
/SCO happily generates the Public synonym DDL w/o the owner specified (and it can be executed as such). However, on subsequent comparisons the underlying object’s qualified name is used and the public synonyms are all identified as being different.
e.g. CREATE OR REPLACE PUBLIC SYNONYM foobar FOR myschema.bar vs. CREATE OR REPLACE PUBLIC SYNONYM foo_bar FOR barThis behavior feels like a bug.
Suggesting a fix:
Option 1
- Ignore the current schema owner value (source / target side) if the “Exclude Schema Names” option is selected and the target has no (or a different) owner on the target-side DDL
(This option seems more straightforward, but the implicit ambiguity could be considered a bit risky – esp. since the SCO generated public synonym DDL uses CREATE OR REPLACE PUBLIC SYNONYM)Option 2
- One could also make the argument that public synonyms are a bit of a special case – because they are PUBLIC / DB instance wide.
Perhaps the default behavior ought to be for developers to be specific about the public synonym object ownership. Taking this approach, it may make sense to have a special configuration setting specific to excluding the schema name for the public synonym underlying object ownership (i.e. this would support moving objects cross schema while maintaining the public synonym – e.g. myschemav1 to myschemav2).Additional considerations for either solution:
- Synonyms (public or private) are a bit of a special case because you can declare synonyms for another user’s objects.
- Public synonyms are even more of a special case because there is a single instance of the synonym name which is owned by PUBLIC – i.e. there is only one source of truth for the PUBLIC synonym at any point in time.
- SCO's use of the "OR REPLACE" caluse for PUBLIC (global) synonyms is potentially problematic as this can result in an unintentional repointing of the object a synonym points to (or evrn pointing a public synonym to a non-existant object) -- w/o warning!
-- Omitting the "OR REPLACE" clause would result in an error if the PUBLIC synonym already existed
- Also consider the deployment models:
-- Running deployments as SYSTEM (or an execution / super-user account w/ multi-schema – CREATE ANY * - privs)
--- in this case you will most certainly want / need to specify a qualified schema owner for nearly every type of object including synonyms (public or private).
-- Running deployments where the user doing the deployment is the object owner (i.e. not using SYSTEM or a multi-schema privileged user)
--- in this case the need to explicitly identify the object owner is somewhat lessend (assuming current user / deployer owne the object referenced by the synonym), but only somewhat as a synonym can be declared for another schema's objectsHere are some examples:
If deployment user is:
- “SCHEMA1”
-- CREATE OR REPLACE PUBLIC SYNONYM foobar FOR bar (is FOR SCHEMA1.bar - not SYSTEM.bar)
- “SCHEMA2”
-- CREATE OR REPLACE PUBLIC SYNONYM foobar FOR bar (is FOR SCHEMA2.bar - not SYSTEM.bar)“SCHEMA1”
-- CREATE OR REPLACE PUBLIC SYNONYM foobar FOR SCHEMA_2.bar (schema owner is qualified; this is allowed – as I can create a public synonym for another user’s objects)
--- HOWEVER -- this is where the addition of the OR REPLACE clause is actually a bit dangerous, because I can effectively “hi-jack” / repoint a public synonym w/o warning
--- Using only the CREATE PUBLIC SYNONYM… I’d get an error alerting me that the name was already in use and I’d need to resolve that conflict before continuing
-- May be a good idea to force an explicit drop and re-create – or at least make the inclusion of “ OR REPLACE” clause and optional behavior for the public synonyms?“SYSTEM” (or multi-schema privileged user)
-- CREATE OR REPLACE PUBLIC SYNONYM foobar FOR <schemaowner>.bar (will most certainly require a schema owner name, as it is not a good practice to set-up your objects under the SYSTEM user. Likewise you wouldn’t want your deployment user account to be the designated object owner of any unqualified object names the public synonyms point to)
(In this case there is even a greater risk of unqualified object names resulting in a public synonym that points to a non-existant objects -- e.g. SYSTEM.bar)
In Summary:
- Probably best practice to encourage the use of qualified object names for synonyms (public or private)
- May want to option toggle the use of the OR REPLACE clause for public synonyms
-- safest to default to forcing a drop / recreate of a public synonym if the name is already in use
-- some use cases may want to leverage the OR REPLACE clause (see next item), but that may be more of be a special use case (i.e. an override of default behavior)
- There may be some use cases where users intentionally want to omit the schema name of the underlying object, to facilitate re-pointing the underlying object a public synonym resolves toWith the “Exclude Schema Names” option enabled, SCO identifies false-positive mismatches for public synonyms.
In Oracle public synonym DDL w/o owner specified defaults the object owner to current user.
CREATE PUBLIC SYNONYM foo_bar FOR bar
/SELECT *
FROM allsynonyms
WHERE synonymname = 'FOO_BAR'
/SCO happily generates the Public synonym DDL w/o the owner specified (and it can be executed as such). However, on subsequent comparisons the underlying object’s qualified name is used and the public synonyms are all identified as being different.
e.g. CREATE OR REPLACE PUBLIC SYNONYM foobar FOR myschema.bar vs. CREATE OR…1 vote
- Don't see your idea?