diff --git a/doc/FAQ_DEV b/doc/FAQ_DEV index 42dc34f19c..c324db36f9 100644 --- a/doc/FAQ_DEV +++ b/doc/FAQ_DEV @@ -560,7 +560,7 @@ Table, column, type, function, and view names are stored in system tables in columns of type Name. Name is a fixed-length, null-terminated type of NAMEDATALEN bytes. (The default value for - NAMEDATALEN is 32 bytes.) + NAMEDATALEN is 64 bytes.) typedef struct nameData { char data[NAMEDATALEN]; diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index ce735827b4..bf53769a1e 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -1,5 +1,5 @@ @@ -914,7 +914,7 @@ SELECT b, char_length(b) FROM test2; PostgreSQL. The name type exists only for storage of internal catalog names and is not intended for use by the general user. Its length - is currently defined as 32 bytes (31 usable characters plus terminator) + is currently defined as 64 bytes (63 usable characters plus terminator) but should be referenced using the macro NAMEDATALEN. The length is set at compile time (and is therefore adjustable for special uses); the default @@ -943,8 +943,8 @@ SELECT b, char_length(b) FROM test2; name - 32 bytes - Thirty-one character internal type + 64 bytes + Sixty-three character internal type diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml index 0d39014d32..e4812e7028 100644 --- a/doc/src/sgml/indices.sgml +++ b/doc/src/sgml/indices.sgml @@ -1,4 +1,4 @@ - + Indexes @@ -236,7 +236,7 @@ CREATE INDEX test2_mm_idx ON test2 (major, minor); Currently, only the B-tree and GiST implementations support multicolumn - indexes. Up to 16 columns may be specified. (This limit can be + indexes. Up to 32 columns may be specified. (This limit can be altered when building PostgreSQL; see the file pg_config.h.) diff --git a/doc/src/sgml/manage.sgml b/doc/src/sgml/manage.sgml index 786adb7196..1850b7481e 100644 --- a/doc/src/sgml/manage.sgml +++ b/doc/src/sgml/manage.sgml @@ -1,5 +1,5 @@ @@ -70,7 +70,7 @@ ERROR: CREATE DATABASE: Permission denied. You automatically become the database administrator of the database you just created. Database names must have an alphabetic first - character and are limited to 31 characters in length. + character and are limited to 63 characters in length. PostgreSQL allows you to create any number of databases at a given site. diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml index ce04dde81f..2144eaa2dd 100644 --- a/doc/src/sgml/ref/create_index.sgml +++ b/doc/src/sgml/ref/create_index.sgml @@ -1,5 +1,5 @@ @@ -339,7 +339,7 @@ ERROR: Cannot create index: 'index_name' already exists. Currently, only the B-tree and gist access methods support multicolumn - indexes. Up to 16 keys may be specified by default (this limit + indexes. Up to 32 keys may be specified by default (this limit can be altered when building PostgreSQL). Only B-tree currently supports unique indexes. diff --git a/doc/src/sgml/ref/current_user.sgml b/doc/src/sgml/ref/current_user.sgml index d358dd8c43..630728da9d 100644 --- a/doc/src/sgml/ref/current_user.sgml +++ b/doc/src/sgml/ref/current_user.sgml @@ -1,5 +1,5 @@ @@ -77,7 +77,7 @@ The name of the current user. Notes - Data type "name" is a non-standard 31-character type for storing + Data type "name" is a non-standard 63-character type for storing system identifiers. diff --git a/doc/src/sgml/ref/listen.sgml b/doc/src/sgml/ref/listen.sgml index 405e6fb0e2..ac610585ca 100644 --- a/doc/src/sgml/ref/listen.sgml +++ b/doc/src/sgml/ref/listen.sgml @@ -1,5 +1,5 @@ @@ -146,7 +146,7 @@ WARNING: Async_Listen: We are already listening on notifyname is enclosed in double-quotes, it need not even be a syntactically - valid name, but can be any string up to 31 characters long. + valid name, but can be any string up to 63 characters long. In some previous releases of diff --git a/doc/src/sgml/ref/notify.sgml b/doc/src/sgml/ref/notify.sgml index e21121dabd..a7a7df058d 100644 --- a/doc/src/sgml/ref/notify.sgml +++ b/doc/src/sgml/ref/notify.sgml @@ -1,5 +1,5 @@ @@ -180,7 +180,7 @@ NOTIFY it need not correspond to the name of any actual table. If name is enclosed in double-quotes, it need not even be a syntactically - valid name, but can be any string up to 31 characters long. + valid name, but can be any string up to 63 characters long. In some previous releases of diff --git a/doc/src/sgml/ref/unlisten.sgml b/doc/src/sgml/ref/unlisten.sgml index 07d3db1ec9..1abe7c3b41 100644 --- a/doc/src/sgml/ref/unlisten.sgml +++ b/doc/src/sgml/ref/unlisten.sgml @@ -1,5 +1,5 @@ @@ -114,7 +114,7 @@ UNLISTEN { notifyname | * } notifyname need not be a valid class name but can be any string valid - as a name up to 32 characters long. + as a name up to 64 characters long. The backend does not complain if you UNLISTEN something you were not diff --git a/doc/src/sgml/start.sgml b/doc/src/sgml/start.sgml index a1adb712ce..f4ca77fe1f 100644 --- a/doc/src/sgml/start.sgml +++ b/doc/src/sgml/start.sgml @@ -1,5 +1,5 @@ @@ -231,7 +231,7 @@ createdb: database creation failed You can also create databases with other names. PostgreSQL allows you to create any number of databases at a given site. Database names must have an - alphabetic first character and are limited to 31 characters in + alphabetic first character and are limited to 63 characters in length. A convenient choice is to create a database with the same name as your current user name. Many tools assume that database name as the default, so it can save you some typing. To create diff --git a/doc/src/sgml/syntax.sgml b/doc/src/sgml/syntax.sgml index fbbe78db9a..a99a526db1 100644 --- a/doc/src/sgml/syntax.sgml +++ b/doc/src/sgml/syntax.sgml @@ -1,5 +1,5 @@ @@ -120,8 +120,8 @@ INSERT INTO MY_TABLE VALUES (3, 'hi there'); The system uses no more than NAMEDATALEN-1 characters of an identifier; longer names can be written in commands, but they will be truncated. By default, - NAMEDATALEN is 32 so the maximum identifier length - is 31 (but at the time the system is built, + NAMEDATALEN is 64 so the maximum identifier length + is 63 (but at the time the system is built, NAMEDATALEN can be changed in src/include/postgres_ext.h). diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index 9be47a90c9..e483863bbb 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -3,7 +3,7 @@ * * Copyright 2000-2002 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.75 2002/08/10 03:56:23 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.76 2002/08/13 20:40:44 momjian Exp $ */ #include "postgres_fe.h" #include "command.h" @@ -1513,7 +1513,7 @@ editFile(const char *fname) sys = malloc(strlen(editorName) + strlen(fname) + 32 + 1); if (!sys) return false; - sprintf(sys, "exec %s %s", editorName, fname); + snprintf(sys, 32, "exec %s %s", editorName, fname); result = system(sys); if (result == -1) psql_error("could not start editor %s\n", editorName); diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index 792b2858f1..8f06566e77 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -37,7 +37,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: catversion.h,v 1.147 2002/08/09 16:45:14 tgl Exp $ + * $Id: catversion.h,v 1.148 2002/08/13 20:40:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -53,6 +53,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 200208091 +#define CATALOG_VERSION_NO 200208131 #endif diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 01d5465ad8..ea91f79e32 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -8,7 +8,7 @@ * or in pg_config.h afterwards. Of course, if you edit pg_config.h, then your * changes will be overwritten the next time you run configure. * - * $Id: pg_config.h.in,v 1.26 2002/07/31 17:19:54 tgl Exp $ + * $Id: pg_config.h.in,v 1.27 2002/08/13 20:40:44 momjian Exp $ */ #ifndef PG_CONFIG_H @@ -162,7 +162,7 @@ * switch statement in fmgr_oldstyle() in src/backend/utils/fmgr/fmgr.c. * But consider converting such functions to new-style instead... */ -#define INDEX_MAX_KEYS 16 +#define INDEX_MAX_KEYS 32 #define FUNC_MAX_ARGS INDEX_MAX_KEYS /* diff --git a/src/include/postgres_ext.h b/src/include/postgres_ext.h index 3249ce4350..d4e5b4ebbf 100644 --- a/src/include/postgres_ext.h +++ b/src/include/postgres_ext.h @@ -15,7 +15,7 @@ * use header files that are otherwise internal to Postgres to interface * with the backend. * - * $Id: postgres_ext.h,v 1.10 2002/04/30 19:53:03 tgl Exp $ + * $Id: postgres_ext.h,v 1.11 2002/08/13 20:40:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -41,6 +41,6 @@ typedef unsigned int Oid; * * NOTE that databases with different NAMEDATALEN's cannot interoperate! */ -#define NAMEDATALEN 32 +#define NAMEDATALEN 64 #endif diff --git a/src/interfaces/jdbc/org/postgresql/errors.properties b/src/interfaces/jdbc/org/postgresql/errors.properties index 26ff2f724b..d03673351b 100644 --- a/src/interfaces/jdbc/org/postgresql/errors.properties +++ b/src/interfaces/jdbc/org/postgresql/errors.properties @@ -61,7 +61,7 @@ postgresql.res.colname:The column name {0} not found. postgresql.res.colrange:The column index is out of range. postgresql.res.nextrequired:Result set not positioned properly, perhaps you need to call next(). postgresql.serial.interface:You cannot serialize an interface. -postgresql.serial.namelength:Class & Package name length cannot be longer than 32 characters. {0} is {1} characters. +postgresql.serial.namelength:Class & Package name length cannot be longer than 64 characters. {0} is {1} characters. postgresql.serial.noclass:No class found for {0} postgresql.serial.table:The table for {0} is not in the database. Contact the DBA, as the database is in an inconsistent state. postgresql.serial.underscore:Class names may not have _ in them. You supplied {0}. diff --git a/src/interfaces/jdbc/org/postgresql/util/Serialize.java b/src/interfaces/jdbc/org/postgresql/util/Serialize.java index f1f12520ba..8898e1ecf4 100644 --- a/src/interfaces/jdbc/org/postgresql/util/Serialize.java +++ b/src/interfaces/jdbc/org/postgresql/util/Serialize.java @@ -57,7 +57,7 @@ import java.sql.*; * There are a number of limitations placed on the java class to be * used by Serialize: *
    - *
  • The class name must be less than 32 chars long and must be all lowercase. + *
  • The class name must be less than 64 chars long and must be all lowercase. * This is due to limitations in Postgres about the size of table names. * The name must be all lowercase since table names in Postgres are * case insensitive and the relname is stored in lowercase. Unless some @@ -577,7 +577,7 @@ public class Serialize * * Because of this, a Class name may not have _ in the name.

    * Another limitation, is that the entire class name (including packages) - * cannot be longer than 32 characters (a limit forced by PostgreSQL). + * cannot be longer than 64 characters (a limit forced by PostgreSQL). * * @param name Class name * @return PostgreSQL table name @@ -590,16 +590,16 @@ public class Serialize if (name.indexOf("_") > -1) throw new PSQLException("postgresql.serial.underscore"); - // Postgres table names can only be 32 character long. - // Reserve 1 char, so allow only up to 31 chars. + // Postgres table names can only be 64 character long. + // Reserve 1 char, so allow only up to 63 chars. // If the full class name with package is too long // then just use the class name. If the class name is // too long throw an exception. // - if ( name.length() > 31 ) + if ( name.length() > 63 ) { name = name.substring(name.lastIndexOf(".") + 1); - if ( name.length() > 31 ) + if ( name.length() > 63 ) throw new PSQLException("postgresql.serial.namelength", name, new Integer(name.length())); } return name.replace('.', '_'); diff --git a/src/test/regress/expected/name.out b/src/test/regress/expected/name.out index ea9a6e6f64..ce876c4eb3 100644 --- a/src/test/regress/expected/name.out +++ b/src/test/regress/expected/name.out @@ -19,86 +19,86 @@ SELECT name 'name string' = name 'name string ' AS "False"; -- -- CREATE TABLE NAME_TBL(f1 name); -INSERT INTO NAME_TBL(f1) VALUES ('ABCDEFGHIJKLMNOP'); -INSERT INTO NAME_TBL(f1) VALUES ('abcdefghijklmnop'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr'); INSERT INTO NAME_TBL(f1) VALUES ('asdfghjkl;'); INSERT INTO NAME_TBL(f1) VALUES ('343f%2a'); INSERT INTO NAME_TBL(f1) VALUES ('d34aaasdf'); INSERT INTO NAME_TBL(f1) VALUES (''); -INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); SELECT '' AS seven, NAME_TBL.*; seven | f1 --------+--------------------------------- - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ (7 rows) -SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> 'ABCDEFGHIJKLMNOP'; +SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; six | f1 ------+--------------------------------- - | abcdefghijklmnop +-----+----------------------------------------------------------------- + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(6 rows) +(5 rows) -SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = 'ABCDEFGHIJKLMNOP'; +SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; one | f1 ------+------------------ - | ABCDEFGHIJKLMNOP +-----+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(2 rows) + +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; + three | f1 +-------+---- + | (1 row) -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < 'ABCDEFGHIJKLMNOP'; - three | f1 --------+--------------------------------- - | 343f%2a - | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(3 rows) - -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; four | f1 -------+--------------------------------- - | ABCDEFGHIJKLMNOP - | 343f%2a +------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ | - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(4 rows) - -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > 'ABCDEFGHIJKLMNOP'; - three | f1 --------+------------------ - | abcdefghijklmnop - | asdfghjkl; - | d34aaasdf + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ (3 rows) -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= 'ABCDEFGHIJKLMNOP'; - four | f1 -------+------------------ - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop - | asdfghjkl; - | d34aaasdf +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; + three | f1 +-------+----------------------------------------------------------------- + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq + | asdfghjkl; + | 343f%2a + | d34aaasdf (4 rows) +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; + four | f1 +------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq + | asdfghjkl; + | 343f%2a + | d34aaasdf + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(6 rows) + SELECT '' AS seven, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*'; seven | f1 --------+--------------------------------- - | ABCDEFGHIJKLMNOP - | abcdefghijklmnop +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | asdfghjkl; | 343f%2a | d34aaasdf | - | 1234567890ABCDEFGHIJKLMNOPQRSTU + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ (7 rows) SELECT '' AS zero, c.f1 FROM NAME_TBL c WHERE c.f1 !~ '.*'; @@ -108,11 +108,13 @@ SELECT '' AS zero, c.f1 FROM NAME_TBL c WHERE c.f1 !~ '.*'; SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '[0-9]'; three | f1 --------+--------------------------------- +-------+----------------------------------------------------------------- + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ + | 1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopq | 343f%2a | d34aaasdf - | 1234567890ABCDEFGHIJKLMNOPQRSTU -(3 rows) + | 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQ +(5 rows) SELECT '' AS two, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*asdf.*'; two | f1 diff --git a/src/test/regress/sql/name.sql b/src/test/regress/sql/name.sql index 882364fba8..bcf3ac90fe 100644 --- a/src/test/regress/sql/name.sql +++ b/src/test/regress/sql/name.sql @@ -14,9 +14,9 @@ SELECT name 'name string' = name 'name string ' AS "False"; CREATE TABLE NAME_TBL(f1 name); -INSERT INTO NAME_TBL(f1) VALUES ('ABCDEFGHIJKLMNOP'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'); -INSERT INTO NAME_TBL(f1) VALUES ('abcdefghijklmnop'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqr'); INSERT INTO NAME_TBL(f1) VALUES ('asdfghjkl;'); @@ -26,22 +26,22 @@ INSERT INTO NAME_TBL(f1) VALUES ('d34aaasdf'); INSERT INTO NAME_TBL(f1) VALUES (''); -INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); +INSERT INTO NAME_TBL(f1) VALUES ('1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ'); SELECT '' AS seven, NAME_TBL.*; -SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> 'ABCDEFGHIJKLMNOP'; +SELECT '' AS six, c.f1 FROM NAME_TBL c WHERE c.f1 <> '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = 'ABCDEFGHIJKLMNOP'; +SELECT '' AS one, c.f1 FROM NAME_TBL c WHERE c.f1 = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 < '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 <= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > 'ABCDEFGHIJKLMNOP'; +SELECT '' AS three, c.f1 FROM NAME_TBL c WHERE c.f1 > '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; -SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= 'ABCDEFGHIJKLMNOP'; +SELECT '' AS four, c.f1 FROM NAME_TBL c WHERE c.f1 >= '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABCDEFGHIJKLMNOPQR'; SELECT '' AS seven, c.f1 FROM NAME_TBL c WHERE c.f1 ~ '.*';