mirror of
https://github.com/MariaDB/server.git
synced 2025-09-02 09:41:40 +03:00
Bug fix for alter table and auto_increment
This commit is contained in:
@@ -15,7 +15,7 @@ col2 varchar(30) not null,
|
|||||||
col3 varchar (20) not null,
|
col3 varchar (20) not null,
|
||||||
col4 varchar(4) not null,
|
col4 varchar(4) not null,
|
||||||
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
|
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
|
||||||
col6 int not null, to_be_deleted int);
|
col6 int not null, to_be_deleted int) ENGINE=ndbcluster;
|
||||||
insert into t1 values (2,4,3,5,"PENDING",1,7);
|
insert into t1 values (2,4,3,5,"PENDING",1,7);
|
||||||
alter table t1
|
alter table t1
|
||||||
add column col4_5 varchar(20) not null after col4,
|
add column col4_5 varchar(20) not null after col4,
|
||||||
|
@@ -6,20 +6,20 @@ attr2 INT,
|
|||||||
attr3 VARCHAR(10)
|
attr3 VARCHAR(10)
|
||||||
) ENGINE=ndbcluster;
|
) ENGINE=ndbcluster;
|
||||||
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
||||||
SELECT pk1 FROM t1;
|
SELECT pk1 FROM t1 ORDER BY pk1;
|
||||||
pk1
|
pk1
|
||||||
9410
|
9410
|
||||||
9411
|
9411
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY pk1;
|
||||||
pk1 attr1 attr2 attr3
|
pk1 attr1 attr2 attr3
|
||||||
9410 9412 NULL 9412
|
9410 9412 NULL 9412
|
||||||
9411 9413 17 9413
|
9411 9413 17 9413
|
||||||
SELECT t1.* FROM t1;
|
SELECT t1.* FROM t1 ORDER BY pk1;
|
||||||
pk1 attr1 attr2 attr3
|
pk1 attr1 attr2 attr3
|
||||||
9410 9412 NULL 9412
|
9410 9412 NULL 9412
|
||||||
9411 9413 17 9413
|
9411 9413 17 9413
|
||||||
UPDATE t1 SET attr1=1 WHERE pk1=9410;
|
UPDATE t1 SET attr1=1 WHERE pk1=9410;
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY pk1;
|
||||||
pk1 attr1 attr2 attr3
|
pk1 attr1 attr2 attr3
|
||||||
9410 1 NULL 9412
|
9410 1 NULL 9412
|
||||||
9411 9413 17 9413
|
9411 9413 17 9413
|
||||||
@@ -115,13 +115,17 @@ SELECT * FROM t1;
|
|||||||
id id2
|
id id2
|
||||||
1234 7890
|
1234 7890
|
||||||
DELETE FROM t1;
|
DELETE FROM t1;
|
||||||
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890);
|
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890), (3454, 7890);
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY id;
|
||||||
id id2
|
id id2
|
||||||
|
3454 7890
|
||||||
3456 7890
|
3456 7890
|
||||||
3456 7890
|
3456 7890
|
||||||
3456 7890
|
3456 7890
|
||||||
DELETE FROM t1 WHERE id = 3456;
|
DELETE FROM t1 WHERE id = 3456;
|
||||||
|
SELECT * FROM t1 ORDER BY id;
|
||||||
|
id id2
|
||||||
|
3454 7890
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
CREATE TABLE t1 (
|
CREATE TABLE t1 (
|
||||||
pk1 INT NOT NULL PRIMARY KEY,
|
pk1 INT NOT NULL PRIMARY KEY,
|
||||||
|
@@ -11,6 +11,11 @@ x y
|
|||||||
2 two
|
2 two
|
||||||
start transaction;
|
start transaction;
|
||||||
insert into t1 values (3,'three');
|
insert into t1 values (3,'three');
|
||||||
|
select * from t1 order by x;
|
||||||
|
x y
|
||||||
|
1 one
|
||||||
|
2 two
|
||||||
|
3 three
|
||||||
start transaction;
|
start transaction;
|
||||||
select * from t1 order by x;
|
select * from t1 order by x;
|
||||||
x y
|
x y
|
||||||
|
@@ -29,7 +29,7 @@ col2 varchar(30) not null,
|
|||||||
col3 varchar (20) not null,
|
col3 varchar (20) not null,
|
||||||
col4 varchar(4) not null,
|
col4 varchar(4) not null,
|
||||||
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
|
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
|
||||||
col6 int not null, to_be_deleted int);
|
col6 int not null, to_be_deleted int) ENGINE=ndbcluster;
|
||||||
insert into t1 values (2,4,3,5,"PENDING",1,7);
|
insert into t1 values (2,4,3,5,"PENDING",1,7);
|
||||||
alter table t1
|
alter table t1
|
||||||
add column col4_5 varchar(20) not null after col4,
|
add column col4_5 varchar(20) not null after col4,
|
||||||
|
@@ -21,13 +21,13 @@ CREATE TABLE t1 (
|
|||||||
|
|
||||||
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
||||||
|
|
||||||
SELECT pk1 FROM t1;
|
SELECT pk1 FROM t1 ORDER BY pk1;
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY pk1;
|
||||||
SELECT t1.* FROM t1;
|
SELECT t1.* FROM t1 ORDER BY pk1;
|
||||||
|
|
||||||
# Update on record by primary key
|
# Update on record by primary key
|
||||||
UPDATE t1 SET attr1=1 WHERE pk1=9410;
|
UPDATE t1 SET attr1=1 WHERE pk1=9410;
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY pk1;
|
||||||
|
|
||||||
# Update primary key
|
# Update primary key
|
||||||
UPDATE t1 SET pk1=2 WHERE attr1=1;
|
UPDATE t1 SET pk1=2 WHERE attr1=1;
|
||||||
@@ -85,9 +85,10 @@ UPDATE t1 SET id=1234 WHERE id2=7890;
|
|||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
DELETE FROM t1;
|
DELETE FROM t1;
|
||||||
|
|
||||||
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890);
|
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890), (3454, 7890);
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1 ORDER BY id;
|
||||||
DELETE FROM t1 WHERE id = 3456;
|
DELETE FROM t1 WHERE id = 3456;
|
||||||
|
SELECT * FROM t1 ORDER BY id;
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
@@ -25,10 +25,13 @@ connection con2;
|
|||||||
select * from t1 order by x;
|
select * from t1 order by x;
|
||||||
|
|
||||||
connection con1;
|
connection con1;
|
||||||
start transaction; insert into t1 values (3,'three');
|
start transaction;
|
||||||
|
insert into t1 values (3,'three');
|
||||||
|
select * from t1 order by x;
|
||||||
|
|
||||||
connection con2;
|
connection con2;
|
||||||
start transaction; select * from t1 order by x;
|
start transaction;
|
||||||
|
select * from t1 order by x;
|
||||||
|
|
||||||
connection con1;
|
connection con1;
|
||||||
commit;
|
commit;
|
||||||
|
@@ -1452,7 +1452,7 @@ NdbDictInterface::createOrAlterTable(Ndb & ndb,
|
|||||||
alterTable(&tSignal, ptr)
|
alterTable(&tSignal, ptr)
|
||||||
: createTable(&tSignal, ptr);
|
: createTable(&tSignal, ptr);
|
||||||
|
|
||||||
if (haveAutoIncrement) {
|
if (!alter && haveAutoIncrement) {
|
||||||
// if (!ndb.setAutoIncrementValue(impl.m_internalName.c_str(), autoIncrementValue)) {
|
// if (!ndb.setAutoIncrementValue(impl.m_internalName.c_str(), autoIncrementValue)) {
|
||||||
if (!ndb.setAutoIncrementValue(impl.m_externalName.c_str(), autoIncrementValue)) {
|
if (!ndb.setAutoIncrementValue(impl.m_externalName.c_str(), autoIncrementValue)) {
|
||||||
m_error.code = 4336;
|
m_error.code = 4336;
|
||||||
|
Reference in New Issue
Block a user