From c708619d0b4a3faa58504c3509c69d6390a80361 Mon Sep 17 00:00:00 2001 From: "mskold@mysql.com" <> Date: Fri, 2 Jul 2004 11:50:28 +0200 Subject: Added support for update of pk --- mysql-test/r/ndb_basic.result | 16 +++++++++++++--- mysql-test/t/ndb_basic.test | 11 ++++++++--- 2 files changed, 21 insertions(+), 6 deletions(-) (limited to 'mysql-test') diff --git a/mysql-test/r/ndb_basic.result b/mysql-test/r/ndb_basic.result index 0e7b039a5f9..56b2d2fb0f7 100644 --- a/mysql-test/r/ndb_basic.result +++ b/mysql-test/r/ndb_basic.result @@ -3,25 +3,35 @@ CREATE TABLE t1 ( pk1 INT NOT NULL PRIMARY KEY, attr1 INT NOT NULL ) ENGINE=ndbcluster; -INSERT INTO t1 VALUES (9410,9412); +INSERT INTO t1 VALUES (9410,9412),(9411,9413); SELECT pk1 FROM t1; pk1 9410 +9411 SELECT * FROM t1; pk1 attr1 9410 9412 +9411 9413 SELECT t1.* FROM t1; pk1 attr1 9410 9412 +9411 9413 UPDATE t1 SET attr1=1 WHERE pk1=9410; SELECT * FROM t1; pk1 attr1 9410 1 +9411 9413 UPDATE t1 SET pk1=2 WHERE attr1=1; -ERROR 42000: Table 't1' uses an extension that doesn't exist in this MySQL version SELECT * FROM t1; pk1 attr1 -9410 1 +2 1 +9411 9413 +UPDATE t1 SET pk1=2 WHERE attr1=9413; +ERROR 23000: Can't write; duplicate key in table 't1' +SELECT * FROM t1; +pk1 attr1 +2 1 +9411 9413 DELETE FROM t1; SELECT * FROM t1; pk1 attr1 diff --git a/mysql-test/t/ndb_basic.test b/mysql-test/t/ndb_basic.test index 271357ed561..ed13b36bf16 100644 --- a/mysql-test/t/ndb_basic.test +++ b/mysql-test/t/ndb_basic.test @@ -17,7 +17,7 @@ CREATE TABLE t1 ( attr1 INT NOT NULL ) ENGINE=ndbcluster; -INSERT INTO t1 VALUES (9410,9412); +INSERT INTO t1 VALUES (9410,9412),(9411,9413); SELECT pk1 FROM t1; SELECT * FROM t1; @@ -27,11 +27,16 @@ SELECT t1.* FROM t1; UPDATE t1 SET attr1=1 WHERE pk1=9410; SELECT * FROM t1; -# Can't UPDATE PK! Test that correct error is returned --- error 1112 +# Update pk UPDATE t1 SET pk1=2 WHERE attr1=1; SELECT * FROM t1; +# Try to set same pk +# 1022: Can't write; duplicate key in table 't1' +-- error 1022 +UPDATE t1 SET pk1=2 WHERE attr1=9413; +SELECT * FROM t1; + # Delete the record DELETE FROM t1; SELECT * FROM t1; -- cgit v1.2.1