~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/t/alter_table.test

  • Committer: Brian Aker
  • Date: 2008-07-19 06:08:40 UTC
  • Revision ID: brian@tangent.org-20080719060840-edggt9u2ak1cq0x3
Partial fix for alter table 

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
select * from t1;
24
24
drop table t1;
25
25
 
26
 
create table t1 (bandID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY, payoutID SMALLINT UNSIGNED NOT NULL);
 
26
create table t1 (bandID INT UNSIGNED NOT NULL PRIMARY KEY, payoutID SMALLINT UNSIGNED NOT NULL);
27
27
insert into t1 (bandID,payoutID) VALUES (1,6),(2,6),(3,4),(4,9),(5,10),(6,1),(7,12),(8,12);
28
28
alter table t1 add column new_col int, order by payoutid,bandid;
29
29
select * from t1;
572
572
alter table table_24562 order by (section + 12);
573
573
--error ER_PARSE_ERROR
574
574
alter table table_24562 order by length(title);
575
 
--error ER_PARSE_ERROR
576
 
alter table table_24562 order by (select 12 from dual);
577
575
 
578
576
--error ER_BAD_FIELD_ERROR
579
577
alter table table_24562 order by no_such_col;
619
617
 
620
618
drop table t1;
621
619
 
622
 
#
623
 
# Bug#27507: Wrong DATETIME value was allowed by ALTER TABLE in the
624
 
#            NO_ZERO_DATE mode.
625
 
#
626
 
create table t1(f1 int);
627
 
alter table t1 add column f2 datetime not null, add column f21 date not null;
628
 
insert into t1 values(1,'2000-01-01','2000-01-01');
629
 
--error 1292
630
 
alter table t1 add column f3 datetime not null;
631
 
--error 1292
632
 
alter table t1 add column f3 date not null;
633
 
--error 1292
634
 
alter table t1 add column f4 datetime not null default '2002-02-02',
635
 
  add column f41 date not null;
636
 
alter table t1 add column f4 datetime not null default '2002-02-02',
637
 
  add column f41 date not null default '2002-02-02';
638
 
select * from t1;
639
 
drop table t1;
640
 
set sql_mode= @orig_sql_mode;
 
620
##
 
621
## Bug#27507: Wrong DATETIME value was allowed by ALTER TABLE in the
 
622
##            NO_ZERO_DATE mode.
 
623
##
 
624
#create table t1(f1 int);
 
625
#alter table t1 add column f2 datetime not null, add column f21 date not null;
 
626
#insert into t1 values(1,'2000-01-01','2000-01-01');
 
627
#--error 1292
 
628
#alter table t1 add column f3 datetime not null;
 
629
#--error 1292
 
630
#alter table t1 add column f3 date not null;
 
631
#--error 1292
 
632
#alter table t1 add column f4 datetime not null default '2002-02-02',
 
633
#  add column f41 date not null;
 
634
#alter table t1 add column f4 datetime not null default '2002-02-02',
 
635
#  add column f41 date not null default '2002-02-02';
 
636
#select * from t1;
 
637
#drop table t1;
641
638
 
642
639
#
643
640
# Some additional tests for new, faster alter table.  Note that most of the
677
674
drop table t1;
678
675
 
679
676
#
680
 
# Bug #26794: Adding an index with a prefix on a SPATIAL type breaks ALTER
681
 
# TABLE
682
 
#
683
 
CREATE TABLE t1 (a varchar(500));
684
 
 
685
 
ALTER TABLE t1 ADD b GEOMETRY NOT NULL, ADD SPATIAL INDEX(b);
686
 
SHOW CREATE TABLE t1;
687
 
ALTER TABLE t1 ADD KEY(b(50));
688
 
SHOW CREATE TABLE t1;
689
 
 
690
 
ALTER TABLE t1 ADD c POINT;
691
 
SHOW CREATE TABLE t1;
692
 
 
693
 
--error ER_WRONG_SUB_KEY
694
 
CREATE TABLE t2 (a INT, KEY (a(20)));
695
 
 
696
 
ALTER TABLE t1 ADD d INT;
697
 
--error ER_WRONG_SUB_KEY
698
 
ALTER TABLE t1 ADD KEY (d(20));
699
 
 
700
 
# the 5.1 part of the test
701
 
--error ER_WRONG_SUB_KEY
702
 
ALTER TABLE t1 ADD e GEOMETRY NOT NULL, ADD SPATIAL KEY (e(30));
703
 
 
704
 
DROP TABLE t1;
705
 
 
706
 
#
707
677
# Bug#18038  MySQL server corrupts binary columns data
708
678
#
709
679
 
812
782
SHOW CREATE TABLE `tt+1`;
813
783
SHOW CREATE TABLE `tt+2`;
814
784
DROP TABLE   `tt+1`, `tt+2`;
815
 
#
816
 
# Check if special characters as in tmp_file_prefix work.
817
 
CREATE TABLE `#sql1` (c1 INT);
818
 
CREATE TABLE `@0023sql2` (c1 INT);
819
 
SHOW TABLES;
820
 
RENAME TABLE `#sql1`     TO `@0023sql1`;
821
 
RENAME TABLE `@0023sql2` TO `#sql2`;
822
 
SHOW TABLES;
823
 
ALTER TABLE `@0023sql1`  RENAME `#sql-1`;
824
 
ALTER TABLE `#sql2`      RENAME `@0023sql-2`;
825
 
SHOW TABLES;
826
 
INSERT INTO `#sql-1`     VALUES (1);
827
 
INSERT INTO `@0023sql-2` VALUES (2);
828
 
DROP TABLE `#sql-1`, `@0023sql-2`;
 
785
##
 
786
## Check if special characters as in tmp_file_prefix work.
 
787
#CREATE TABLE `#sql1` (c1 INT);
 
788
#CREATE TABLE `@0023sql2` (c1 INT);
 
789
#SHOW TABLES;
 
790
#RENAME TABLE `#sql1`     TO `@0023sql1`;
 
791
#RENAME TABLE `@0023sql2` TO `#sql2`;
 
792
#SHOW TABLES;
 
793
#ALTER TABLE `@0023sql1`  RENAME `#sql-1`;
 
794
#ALTER TABLE `#sql2`      RENAME `@0023sql-2`;
 
795
#SHOW TABLES;
 
796
#INSERT INTO `#sql-1`     VALUES (1);
 
797
#INSERT INTO `@0023sql-2` VALUES (2);
 
798
#DROP TABLE `#sql-1`, `@0023sql-2`;
829
799
#
830
800
# Same for temporary tables though these names do not become file names.
831
801
CREATE TEMPORARY TABLE `#sql1` (c1 INT);