EVOLUTION-MANAGER
Edit File: is_check_constraint.result
# # MDEV-17323: Backport INFORMATION_SCHEMA.CHECK_CONSTRAINTS to 10.2 # CREATE user boo1; GRANT select,create,alter,drop on foo.* to boo1; SHOW GRANTS for boo1; Grants for boo1@% GRANT USAGE ON *.* TO 'boo1'@'%' GRANT SELECT, CREATE, DROP, ALTER ON `foo`.* TO 'boo1'@'%' CREATE user boo2; create database foo; CONNECT con1,localhost, boo1,, foo; SET check_constraint_checks=1; CREATE TABLE t0 ( t int, check (t>32) # table constraint ) ENGINE=myisam; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CONSTRAINT_1 t0 `t` > 32 ALTER TABLE t0 ADD CONSTRAINT CHK_t0_t CHECK(t<100); SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CHK_t0_t t0 `t` < 100 def foo CONSTRAINT_1 t0 `t` > 32 ALTER TABLE t0 DROP CONSTRAINT CHK_t0_t; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CONSTRAINT_1 t0 `t` > 32 ALTER TABLE t0 ADD CONSTRAINT CHECK(t<50); SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_2 t0 `t` < 50 CREATE TABLE t1 ( t int CHECK(t>2), # field constraint tt int, CONSTRAINT CHECK (tt > 32), CONSTRAINT CHECK (tt <50),# autogenerated names table constraints CONSTRAINT CHK_tt CHECK(tt<100) # named table constraint ) ENGINE=InnoDB; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CHK_tt t1 `tt` < 100 def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_1 t1 `tt` > 32 def foo CONSTRAINT_2 t0 `t` < 50 def foo CONSTRAINT_2 t1 `tt` < 50 def foo t t1 `t` > 2 ALTER TABLE t1 DROP CONSTRAINT CHK_tt; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_1 t1 `tt` > 32 def foo CONSTRAINT_2 t0 `t` < 50 def foo CONSTRAINT_2 t1 `tt` < 50 def foo t t1 `t` > 2 CREATE TABLE t2 ( name VARCHAR(30) CHECK(CHAR_LENGTH(name)>2), #field constraint start_date DATE, end_date DATE, CONSTRAINT CHK_dates CHECK(start_date IS NULL) #table constraint )ENGINE=Innodb; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CHK_dates t2 `start_date` is null def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_1 t1 `tt` > 32 def foo CONSTRAINT_2 t0 `t` < 50 def foo CONSTRAINT_2 t1 `tt` < 50 def foo name t2 char_length(`name`) > 2 def foo t t1 `t` > 2 ALTER TABLE t1 ADD CONSTRAINT CHK_new_ CHECK(t>tt); SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CHK_dates t2 `start_date` is null def foo CHK_new_ t1 `t` > `tt` def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_1 t1 `tt` > 32 def foo CONSTRAINT_2 t0 `t` < 50 def foo CONSTRAINT_2 t1 `tt` < 50 def foo name t2 char_length(`name`) > 2 def foo t t1 `t` > 2 CREATE TABLE t3 ( a int, b int check (b>0), # field constraint named 'b' CONSTRAINT b check (b>10) # table constraint ) ENGINE=InnoDB; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE def foo CHK_dates t2 `start_date` is null def foo CHK_new_ t1 `t` > `tt` def foo CONSTRAINT_1 t0 `t` > 32 def foo CONSTRAINT_1 t1 `tt` > 32 def foo CONSTRAINT_2 t0 `t` < 50 def foo CONSTRAINT_2 t1 `tt` < 50 def foo b t3 `b` > 0 def foo b t3 `b` > 10 def foo name t2 char_length(`name`) > 2 def foo t t1 `t` > 2 disconnect con1; CONNECT con2, localhost, boo2,, test; SELECT * from information_schema.check_constraints; CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_NAME CHECK_CLAUSE disconnect con2; CONNECT con1, localhost, boo1,,foo; DROP TABLE t0; DROP TABLE t1; DROP TABLE t2; DROP TABLE t3; DROP DATABASE foo; disconnect con1; connection default; DROP USER boo1; DROP USER boo2;