diff options
author | unknown <joerg@mysql.com> | 2004-10-21 16:02:12 +0200 |
---|---|---|
committer | unknown <joerg@mysql.com> | 2004-10-21 16:02:12 +0200 |
commit | 97ccddddf5e35e2ea089ba6023c79700550a5c95 (patch) | |
tree | cc214f6ff7f6ba6324f16ba74c0d94b875657f29 /mysql-test/t/ps_10nestset.test | |
parent | f125849dd1fa2b7eaca3aea5f84d7d79fb201ec2 (diff) | |
download | mariadb-git-97ccddddf5e35e2ea089ba6023c79700550a5c95.tar.gz |
Adapt 'ps_10nestset' to standard test style; correct a typing error in 'ps_11bugs'.
mysql-test/r/ps_10nestset.result:
Correct the expected protocol according to the test changes.
mysql-test/t/ps_10nestset.test:
Improve comments; adapt to standard test style:
disable warnings around 'drop table', use 't#' table name scheme.
mysql-test/t/ps_11bugs.test:
Corrected a typing error in the bug number comment.
Diffstat (limited to 'mysql-test/t/ps_10nestset.test')
-rw-r--r-- | mysql-test/t/ps_10nestset.test | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/mysql-test/t/ps_10nestset.test b/mysql-test/t/ps_10nestset.test index 2c6009af9de..d2adaca689e 100644 --- a/mysql-test/t/ps_10nestset.test +++ b/mysql-test/t/ps_10nestset.test @@ -8,28 +8,29 @@ # Source: http://kris.koehntopp.de/artikel/sql-self-references (dated 1999) # Source: http://dbmsmag.com/9603d06.html (dated 1996) -use test; - -drop table if exists personnel; +--disable_warnings +drop table if exists t1; +--enable_warnings # "Nested Set": This table represents an employee list with a hierarchy tree. # The tree is not modeled by "parent" links but rather by showing the "left" # and "right" border of any person's "region". By convention, "l" < "r". # As it is a tree, these "regions" of two persons A and B are either disjoint, -# or A's region is completely contained in B's (B is A's boss), or vice versa. -# See the references for more info. +# or A's region is completely contained in B's (B.l < A.l < A.r < B.r: +# B is A's boss), or vice versa. +# Any other overlaps violate the model. See the references for more info. -create table personnel ( +create table t1 ( id INTEGER AUTO_INCREMENT PRIMARY KEY, emp CHAR(10) NOT NULL, salary DECIMAL(6,2) NOT NULL, l INTEGER NOT NULL, r INTEGER NOT NULL); -prepare st_ins from 'insert into personnel set emp = ?, salary = ?, l = ?, r = ?'; +prepare st_ins from 'insert into t1 set emp = ?, salary = ?, l = ?, r = ?'; # Initial employee list: -# Jerry ( Bert ( ) Chuck ( Donna ( ) Eddie ( ) Fred ( ) ) ) +# Jerry ( Bert () Chuck ( Donna () Eddie () Fred () ) ) set @arg_nam= 'Jerry'; set @arg_sal= 1000; set @arg_l= 1; set @arg_r= 12; execute st_ins using @arg_nam, @arg_sal, @arg_l, @arg_r ; set @arg_nam= 'Bert'; set @arg_sal= 900; set @arg_l= 2; set @arg_r= 3; @@ -43,11 +44,11 @@ execute st_ins using @arg_nam, @arg_sal, @arg_l, @arg_r ; set @arg_nam= 'Fred'; set @arg_sal= 600; set @arg_l= 9; set @arg_r= 10; execute st_ins using @arg_nam, @arg_sal, @arg_l, @arg_r ; -select * from personnel; +select * from t1; # Three successive raises, each one is 100 units for managers, 10 percent for others. -prepare st_raise_base from 'update personnel set salary = salary * ( 1 + ? ) where r - l = 1'; -prepare st_raise_mgr from 'update personnel set salary = salary + ? where r - l > 1'; +prepare st_raise_base from 'update t1 set salary = salary * ( 1 + ? ) where r - l = 1'; +prepare st_raise_mgr from 'update t1 set salary = salary + ? where r - l > 1'; let $1= 3; set @arg_percent= .10; set @arg_amount= 100; @@ -58,6 +59,14 @@ while ($1) dec $1; } -select * from personnel; +select * from t1; + +# Waiting for the resolution of bug#6138 +# # Now, increase salary to a multiple of 50 +# prepare st_round from 'update t1 set salary = salary + ? - ( salary MOD ? )'; +# set @arg_round= 50; +# execute st_round using @arg_round, @arg_round; +# +# select * from t1; -drop table personnel; +drop table t1; |