2009-05-05 16:54:50 +04:00
|
|
|
# 2009 May 5
|
|
|
|
#
|
|
|
|
# The author disclaims copyright to this source code. In place of
|
|
|
|
# a legal notice, here is a blessing:
|
|
|
|
#
|
|
|
|
# May you do good and not evil.
|
|
|
|
# May you find forgiveness for yourself and forgive others.
|
|
|
|
# May you share freely, never taking more than you give.
|
|
|
|
#
|
|
|
|
#***********************************************************************
|
|
|
|
#
|
|
|
|
# Ticket #3838
|
|
|
|
#
|
|
|
|
# The ticket reports that the encoding is UTF8 on the DEFAULT VALUE of
|
|
|
|
# a column added using ALTER TABLE even when the database is UTF16.
|
|
|
|
# Verify that this has been fixed.
|
|
|
|
#
|
|
|
|
# $Id: tkt3838.test,v 1.1 2009/05/05 12:54:50 drh Exp $
|
|
|
|
|
|
|
|
set testdir [file dirname $argv0]
|
|
|
|
source $testdir/tester.tcl
|
|
|
|
|
2009-09-29 10:33:23 +04:00
|
|
|
ifcapable !altertable {
|
|
|
|
finish_test
|
|
|
|
return
|
|
|
|
}
|
2009-05-05 16:54:50 +04:00
|
|
|
|
2011-05-05 23:44:22 +04:00
|
|
|
do_realnum_test tkt3838-1.1 {
|
2009-05-05 16:54:50 +04:00
|
|
|
db eval {
|
|
|
|
PRAGMA encoding=UTF16;
|
|
|
|
CREATE TABLE t1(x);
|
|
|
|
INSERT INTO t1 VALUES(1);
|
|
|
|
ALTER TABLE t1 ADD COLUMN b INTEGER DEFAULT '999';
|
|
|
|
ALTER TABLE t1 ADD COLUMN c REAL DEFAULT '9e99';
|
|
|
|
ALTER TABLE t1 ADD COLUMN d TEXT DEFAULT 'xyzzy';
|
|
|
|
UPDATE t1 SET x=x+1;
|
|
|
|
SELECT * FROM t1;
|
|
|
|
}
|
|
|
|
} {2 999 9e+99 xyzzy}
|
|
|
|
|
2012-02-01 05:13:10 +04:00
|
|
|
ifcapable trigger {
|
|
|
|
do_test tkt3838-1.2 {
|
|
|
|
db eval {
|
|
|
|
CREATE TABLE log(y);
|
|
|
|
CREATE TRIGGER r1 AFTER INSERT ON T1 BEGIN
|
|
|
|
INSERT INTO log VALUES(new.x);
|
|
|
|
END;
|
|
|
|
INSERT INTO t1(x) VALUES(123);
|
|
|
|
ALTER TABLE T1 RENAME TO XYZ2;
|
|
|
|
INSERT INTO xyz2(x) VALUES(456);
|
|
|
|
ALTER TABLE xyz2 RENAME TO pqr3;
|
|
|
|
INSERT INTO pqr3(x) VALUES(789);
|
|
|
|
SELECT * FROM log;
|
|
|
|
}
|
|
|
|
} {123 456 789}
|
|
|
|
}
|
|
|
|
|
2009-05-05 16:54:50 +04:00
|
|
|
finish_test
|