1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-04-23 07:05:36 +03:00
2022-07-08 22:30:02 +02:00

55 lines
2.2 KiB
Plaintext

-- source ../include/have_columnstore.inc
--disable_warnings
DROP DATABASE IF EXISTS test_mcol641_create;
--enable_warnings
CREATE DATABASE test_mcol641_create;
USE test_mcol641_create;
--disable_warnings
DROP TABLE IF EXISTS cs1;
DROP TABLE IF EXISTS cs2;
DROP TABLE IF EXISTS cs3;
DROP TABLE IF EXISTS cs4;
--enable_warnings
CREATE TABLE cs1(d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(19), d5 DECIMAL(19,19),d6 DECIMAL(19,10)) ENGINE=columnstore;
CREATE TABLE cs2(d1 DECIMAL(38) SIGNED, d2 DECIMAL(38,10) SIGNED, d3 DECIMAL(38,38) SIGNED) ENGINE=columnstore;
#This must raise a warning
CREATE TABLE cs3(d1 DECIMAL(38) UNSIGNED ZEROFILL, d2 DECIMAL(38,10) UNSIGNED ZEROFILL, d3 DECIMAL(38,38) UNSIGNED ZEROFILL) ENGINE=columnstore;
CREATE TABLE cs4(d1 DECIMAL(18), d2 DECIMAL(18,10), d3 DECIMAL(18,18)) ENGINE=columnstore;
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_name = 'cs1' OR table_name = 'cs2' OR table_name = 'cs3' OR table_name = 'cs4' ORDER BY table_name,column_name ASC;
ALTER TABLE cs1 DROP COLUMN d4;
ALTER TABLE cs1 ADD COLUMN d7 DECIMAL(38,37);
ALTER TABLE cs2 ADD COLUMN d4 DECIMAL(30,30) SIGNED;
ALTER TABLE cs3 ADD COLUMN d5 DECIMAL(20,18) UNSIGNED;
# Bug. This must work fine.
--error 1178
ALTER TABLE cs1 RENAME COLUMN d7 TO d17;
# Bug. This must work fine.
--error 1178
ALTER TABLE cs2 ADD COLUMN (d5 DECIMAL(38,5), d6 DECIMAL(35,15));
# Bug. This must work fine.
--error 1815
ALTER TABLE cs3 MODIFY d1 DECIMAL(38) SIGNED;
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_schema = 'test_mcol641_create' ORDER BY table_name,column_name ASC;
# This must return an error
--error 1815
CREATE TABLE cs5(d1 DECIMAL(39)) ENGINE=columnstore;
--error 1425,1425
CREATE TABLE cs5(d1 DECIMAL(38,39)) ENGINE=columnstore;
--error 1815
ALTER TABLE cs1 ADD COLUMN d10 DECIMAL(40);
--error 1425,1425
ALTER TABLE cs1 ADD COLUMN d11 DECIMAL(38,40);
DROP TABLE cs1;
DROP TABLE cs2;
DROP TABLE cs3;
DROP TABLE cs4;
DROP DATABASE test_mcol641_create;