1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-04-20 09:07:44 +03:00
mariadb-KirillPerov 85a6121f76
Mtrfix kp 220926 (#2580)
* Update mcol_2000.test

* Update mcs117_create_utf8.test

* Update mcs12_alter_table.test

* Update mcs13_alter_table_negative.test

* Update mcs169_bin_functions.test

* Update mcs171_null_functions.test

* Update mcs173_coalesce_function.test

* Update mcs174_case_function.test

* Update mcs175_convert_functions.test

* Update mcs176_if_function.test

* Update mcs178_adddate_function.test

* Update mcs179_addtime_function.test

* Update mcs180_ascii_function.test

* Update mcs181_between_and.test

* Update mcs182_char_length_function.test

* Update mcs183_date_function.test

* Update mcs184_day_function.test

* Update mcs185_dayname_function.test

* Update mcs186_dayofyear_function.test

* Update mcs187_dayofmonth_function.test

* Update mcs1_create_table_data_types.test

* Update mcs19_grant_revoke.test

* Update mcs229_data_compression_type.test

* Update mcs28_load_data_local_infile.test

* Update mcs2_create_table_valid_names.test

* Update mcs5_create_table_from_other_tables.test

* Update mcs74_check_constraint.test

* Update mcs7_create_table_with_metadata.test

* Update mcs87_alter_column.test

* Update mcs8_create_table_with_constraints.test

* Update disabled.def

* Update mcs19_grant_revoke.test

* Update mcs19_grant_revoke.test

* Update mcs19_grant_revoke.test
2022-10-07 11:36:29 +03:00

68 lines
2.0 KiB
Plaintext

#
# Test CHECK Constraint
# Author: Bharath, bharath.bokka@mariadb.com
#
-- source ../include/have_columnstore.inc
--disable_warnings
DROP DATABASE IF EXISTS mcs74_db;
--enable_warnings
CREATE DATABASE mcs74_db;
USE mcs74_db;
CREATE TABLE t1(t1_int INT, t1_char CHAR(5), CHECK (t1_int > 0))ENGINE=Columnstore;
--replace_regex /( COLLATE=latin1_swedish_ci)//
SHOW CREATE TABLE t1;
INSERT INTO t1 VALUES(NULL, '');
INSERT INTO t1 VALUES(1, 'a');
--error ER_CONSTRAINT_FAILED
INSERT INTO t1 VALUES(0, 'b');
--error ER_CONSTRAINT_FAILED
INSERT INTO t1 VALUES(-1, 'c');
SELECT * FROM t1;
CREATE TABLE t2(t1_char CHAR(10), CONSTRAINT c1 CHECK(t1_char = ''))ENGINE=Columnstore;
--replace_regex /( COLLATE=latin1_swedish_ci)//
SHOW CREATE TABLE t2;
INSERT INTO t2 VALUES();
INSERT INTO t2 VALUES('');
--error ER_CONSTRAINT_FAILED
INSERT INTO t2 VALUES('aaaa');
SELECT * FROM t2;
CREATE TABLE t3(
t3_decimal DECIMAL(5,2),
t3_blob BLOB,
t3_datetime DATETIME,
CONSTRAINT t3_check_date CHECK(t3_datetime >= '1212-12-12 12:12:12'),
CONSTRAINT t3_check_decimal CHECK(t3_decimal < 888.88),
CONSTRAINT t3_check_blob CHECK(t3_blob = 'aaaa')
)ENGINE=Columnstore;
--replace_regex /( COLLATE=latin1_swedish_ci)//
SHOW CREATE TABLE t3;
INSERT INTO t3(t3_decimal) VALUES(NULL);
INSERT INTO t3(t3_decimal) VALUES(888.87);
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_decimal) VALUES(888.88);
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_decimal) VALUES(888.89);
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_blob) VALUES('');
INSERT INTO t3(t3_blob) VALUES('aaaa');
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_blob) VALUES('aaaaa');
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_blob) VALUES('aaa');
INSERT INTO t3(t3_datetime) VALUES(NULL);
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_datetime) VALUES('0:0:0');
INSERT INTO t3(t3_datetime) VALUES('1212-12-12 12:12:12');
INSERT INTO t3(t3_datetime) VALUES('1212-12-12 12:12:13');
--error ER_CONSTRAINT_FAILED
INSERT INTO t3(t3_datetime) VALUES('1212-12-12 12:12:11');
SELECT * FROM t3;
# Clean UP
DROP DATABASE mcs74_db;