~ubuntu-branches/ubuntu/natty/postgresql-8.4/natty-updates

« back to all changes in this revision

Viewing changes to src/test/regress/expected/varchar.out

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2009-03-20 12:00:13 UTC
  • Revision ID: james.westby@ubuntu.com-20090320120013-hogj7egc5mjncc5g
Tags: upstream-8.4~0cvs20090328
ImportĀ upstreamĀ versionĀ 8.4~0cvs20090328

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--
 
2
-- VARCHAR
 
3
--
 
4
CREATE TABLE VARCHAR_TBL(f1 varchar(1));
 
5
INSERT INTO VARCHAR_TBL (f1) VALUES ('a');
 
6
INSERT INTO VARCHAR_TBL (f1) VALUES ('A');
 
7
-- any of the following three input formats are acceptable 
 
8
INSERT INTO VARCHAR_TBL (f1) VALUES ('1');
 
9
INSERT INTO VARCHAR_TBL (f1) VALUES (2);
 
10
INSERT INTO VARCHAR_TBL (f1) VALUES ('3');
 
11
-- zero-length char 
 
12
INSERT INTO VARCHAR_TBL (f1) VALUES ('');
 
13
-- try varchar's of greater than 1 length 
 
14
INSERT INTO VARCHAR_TBL (f1) VALUES ('cd');
 
15
ERROR:  value too long for type character varying(1)
 
16
INSERT INTO VARCHAR_TBL (f1) VALUES ('c     ');
 
17
SELECT '' AS seven, * FROM VARCHAR_TBL;
 
18
 seven | f1 
 
19
-------+----
 
20
       | a
 
21
       | A
 
22
       | 1
 
23
       | 2
 
24
       | 3
 
25
       | 
 
26
       | c
 
27
(7 rows)
 
28
 
 
29
SELECT '' AS six, c.*
 
30
   FROM VARCHAR_TBL c
 
31
   WHERE c.f1 <> 'a';
 
32
 six | f1 
 
33
-----+----
 
34
     | A
 
35
     | 1
 
36
     | 2
 
37
     | 3
 
38
     | 
 
39
     | c
 
40
(6 rows)
 
41
 
 
42
SELECT '' AS one, c.*
 
43
   FROM VARCHAR_TBL c
 
44
   WHERE c.f1 = 'a';
 
45
 one | f1 
 
46
-----+----
 
47
     | a
 
48
(1 row)
 
49
 
 
50
SELECT '' AS five, c.*
 
51
   FROM VARCHAR_TBL c
 
52
   WHERE c.f1 < 'a';
 
53
 five | f1 
 
54
------+----
 
55
      | A
 
56
      | 1
 
57
      | 2
 
58
      | 3
 
59
      | 
 
60
(5 rows)
 
61
 
 
62
SELECT '' AS six, c.*
 
63
   FROM VARCHAR_TBL c
 
64
   WHERE c.f1 <= 'a';
 
65
 six | f1 
 
66
-----+----
 
67
     | a
 
68
     | A
 
69
     | 1
 
70
     | 2
 
71
     | 3
 
72
     | 
 
73
(6 rows)
 
74
 
 
75
SELECT '' AS one, c.*
 
76
   FROM VARCHAR_TBL c
 
77
   WHERE c.f1 > 'a';
 
78
 one | f1 
 
79
-----+----
 
80
     | c
 
81
(1 row)
 
82
 
 
83
SELECT '' AS two, c.*
 
84
   FROM VARCHAR_TBL c
 
85
   WHERE c.f1 >= 'a';
 
86
 two | f1 
 
87
-----+----
 
88
     | a
 
89
     | c
 
90
(2 rows)
 
91
 
 
92
DROP TABLE VARCHAR_TBL;
 
93
--
 
94
-- Now test longer arrays of char
 
95
--
 
96
CREATE TABLE VARCHAR_TBL(f1 varchar(4));
 
97
INSERT INTO VARCHAR_TBL (f1) VALUES ('a');
 
98
INSERT INTO VARCHAR_TBL (f1) VALUES ('ab');
 
99
INSERT INTO VARCHAR_TBL (f1) VALUES ('abcd');
 
100
INSERT INTO VARCHAR_TBL (f1) VALUES ('abcde');
 
101
ERROR:  value too long for type character varying(4)
 
102
INSERT INTO VARCHAR_TBL (f1) VALUES ('abcd    ');
 
103
SELECT '' AS four, * FROM VARCHAR_TBL;
 
104
 four |  f1  
 
105
------+------
 
106
      | a
 
107
      | ab
 
108
      | abcd
 
109
      | abcd
 
110
(4 rows)
 
111