Issue Details (XML | Word | Printable)

Key: CORE-2685
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Adriano dos Santos Fernandes
Reporter: Alex Bekhtin
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Firebird Core

System triggers on view with check option are not removed

Created: 15/Oct/09 08:44 PM   Updated: 04/Nov/09 11:56 PM
Return to search
Component/s: Engine
Affects Version/s: 2.5 Beta 2
Fix Version/s: 2.5 RC1, 3.0 Alpha 1

Time Tracking:
Not Specified

Environment: Firebird-2.5.0.25702-0_Win32

Planning Status: Unspecified


 Description  « Hide
CREATE TABLE TEST_TABLE (
    ID INTEGER,
    CAPTION VARCHAR(10)
);

CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0;

COMMIT;

select rdb$dependent_name from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW';

CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0
WITH CHECK OPTION;

COMMIT;

select rdb$dependent_name from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW';

RDB$DEPENDENT_NAME
=============================
CHECK_1
CHECK_1
CHECK_2


-- repeat 3 times
-- 1
CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0

-- 2
WITH CHECK OPTION;
CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0
WITH CHECK OPTION;

-- 3
CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0
WITH CHECK OPTION;

COMMIT;

-- more checks
select rdb$dependent_name from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW';

RDB$DEPENDENT_NAME
=============================
CHECK_1
CHECK_1
CHECK_3
CHECK_2
CHECK_3
CHECK_4
CHECK_5
CHECK_5
CHECK_6
CHECK_7
CHECK_7
CHECK_8


CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID,
    CAPTION)
AS
select ID
       ,CAPTION
from test_table
where ID > 0
--WITH CHECK OPTION
;

-- ERROR vvv
CREATE OR ALTER VIEW VW_TEST_VIEW(
    ID
    --,CAPTION
    )
AS
select ID
       --,CAPTION
from test_table
where ID > 0;
Statement failed, SQLSTATE = 42000
unsuccessful metadata update
-cannot delete
-COLUMN VW_TEST_VIEW.CAPTION
-there are 4 dependencies


 All   Comments   Work Log   Change History   Version Control      Sort Order: Ascending order - Click to sort in descending order
There are no comments yet on this issue.