OLD | NEW |
1 # 2005 December 19 2005 | 1 # 2005 December 19 2005 |
2 # | 2 # |
3 # The author disclaims copyright to this source code. In place of | 3 # The author disclaims copyright to this source code. In place of |
4 # a legal notice, here is a blessing: | 4 # a legal notice, here is a blessing: |
5 # | 5 # |
6 # May you do good and not evil. | 6 # May you do good and not evil. |
7 # May you find forgiveness for yourself and forgive others. | 7 # May you find forgiveness for yourself and forgive others. |
8 # May you share freely, never taking more than you give. | 8 # May you share freely, never taking more than you give. |
9 # | 9 # |
10 #*********************************************************************** | 10 #*********************************************************************** |
(...skipping 22 matching lines...) Expand all Loading... |
33 do_test tkt1567-1.3 { | 33 do_test tkt1567-1.3 { |
34 execsql { | 34 execsql { |
35 BEGIN; | 35 BEGIN; |
36 UPDATE t1 SET a = a||'x' WHERE rowid%2==0; | 36 UPDATE t1 SET a = a||'x' WHERE rowid%2==0; |
37 } | 37 } |
38 } {} | 38 } {} |
39 do_test tkt1567-1.4 { | 39 do_test tkt1567-1.4 { |
40 catchsql { | 40 catchsql { |
41 UPDATE t1 SET a = CASE WHEN rowid<90 THEN substr(a,1,10) ELSE '9999' END; | 41 UPDATE t1 SET a = CASE WHEN rowid<90 THEN substr(a,1,10) ELSE '9999' END; |
42 } | 42 } |
43 } {1 {column a is not unique}} | 43 } {1 {UNIQUE constraint failed: t1.a}} |
44 do_test tkt1567-1.5 { | 44 do_test tkt1567-1.5 { |
45 execsql { | 45 execsql { |
46 COMMIT; | 46 COMMIT; |
47 } | 47 } |
48 } {} | 48 } {} |
49 integrity_check tkt1567-1.6 | 49 integrity_check tkt1567-1.6 |
50 | 50 |
| 51 do_test tkt1567-2.1 { |
| 52 execsql { |
| 53 CREATE TABLE t2(a TEXT PRIMARY KEY, rowid INT) WITHOUT rowid; |
| 54 } |
| 55 set bigstr abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ |
| 56 for {set i 0} {$i<100} {incr i} { |
| 57 set x [format %5d [expr $i*2]] |
| 58 set sql "INSERT INTO t2 VALUES('$x-$bigstr', $i+1)" |
| 59 execsql $sql |
| 60 } |
| 61 } {} |
| 62 integrity_check tkt1567-2.2 |
| 63 |
| 64 do_test tkt1567-2.3 { |
| 65 execsql { |
| 66 BEGIN; |
| 67 UPDATE t2 SET a = a||'x' WHERE rowid%2==0; |
| 68 } |
| 69 } {} |
| 70 do_test tkt1567-2.4 { |
| 71 catchsql { |
| 72 UPDATE t2 SET a = CASE WHEN rowid<90 THEN substr(a,1,10) ELSE '9999' END; |
| 73 } |
| 74 } {1 {UNIQUE constraint failed: t2.a}} |
| 75 do_test tkt1567-2.5 { |
| 76 execsql { |
| 77 COMMIT; |
| 78 } |
| 79 } {} |
| 80 integrity_check tkt1567-2.6 |
| 81 |
51 finish_test | 82 finish_test |
OLD | NEW |