001: /*
002: Derby - Class org.apache.derbyTesting.functionTests.util.SQLState
003:
004: Licensed to the Apache Software Foundation (ASF) under one or more
005: contributor license agreements. See the NOTICE file distributed with
006: this work for additional information regarding copyright ownership.
007: The ASF licenses this file to You under the Apache License, Version 2.0
008: (the "License"); you may not use this file except in compliance with
009: the License. You may obtain a copy of the License at
010:
011: http =//www.apache.org/licenses/LICENSE-2.0
012:
013: Unless required by applicable law or agreed to in writing, software
014: distributed under the License is distributed on an "AS IS" BASIS,
015: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
016: See the License for the specific language governing permissions and
017: limitations under the License.
018:
019: */
020: package org.apache.derbyTesting.functionTests.util;
021:
022: /**
023: * This contains constants for all the standard SQL states as well as
024: * for those that are specific to Derby that our tests compare against
025: * to make sure the right error is thrown.
026: *
027: * It is important to use these constants rather than those in
028: * org.apache.derby.shared.common.reference.SQLState.java because
029: * (a) that class is not part of the public API and (b) that class contains
030: * message ids, not SQL states.
031: */
032: public class SQLStateConstants {
033: // ==== STANDARD SQL STATES =====
034: // These are derived from the ISO SQL2003 specification
035: // INCITS-ISO-IEC-9075-2-2003
036: //
037: public static final String AMBIGUOUS_CURSOR_NAME_NO_SUBCLASS = "3C000";
038: public static final String ATTEMPT_TO_ASSIGN_TO_NON_UPDATABLE_COLUMN_NO_SUBCLASS = "0U000";
039: public static final String ATTEMPT_TO_ASSIGN_TO_ORDERING_COLUMN_NO_SUBCLASS = "0V000";
040: public static final String CARDINALITY_VIOLATION_NO_SUBCLASS = "21000";
041: public static final String CLI_SPECIFIC_CONDITION_NO_SUBCLASS = "HY000";
042: public static final String CONNECTION_EXCEPTION_NO_SUBCLASS = "08000";
043: public static final String CONNECTION_EXCEPTION_CONNECTION_DOES_NOT_EXIST = "08003";
044: public static final String CONNECTION_EXCEPTION_CONNECTION_FAILURE = "08006";
045: public static final String CONNECTION_EXCEPTION_CONNECTION_NAME_IN_USE = "08002";
046: public static final String CONNECTION_EXCEPTION_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION = "08001";
047: public static final String CONNECTION_EXCEPTION_SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION = "08004";
048: public static final String CONNECTION_EXCEPTION_TRANSACTION_RESOLUTION_UNKNOWN = "08007";
049: public static final String DATA_EXCEPTION_NO_SUBCLASS = "22000";
050: public static final String DATA_EXCEPTION_ARRAY_ELEMENT_ERROR = "2202E";
051: public static final String DATA_EXCEPTION_CHARACTER_NOT_IN_REPERTOIRE = "22021";
052: public static final String DATA_EXCEPTION_DATETIME_FIELD_OVERFLOW = "22008";
053: public static final String DATA_EXCEPTION_DIVISION_BY_ZERO = "22012";
054: public static final String DATA_EXCEPTION_ERROR_IN_ASSIGNMENT = "22005";
055: public static final String DATA_EXCEPTION_ESCAPE_CHARACTER_CONFLICT = "2200B";
056: public static final String DATA_EXCEPTION_INDICATOR_OVERFLOW = "22022";
057: public static final String DATA_EXCEPTION_INTERVAL_FIELD_OVERFLOW = "22015";
058: public static final String DATA_EXCEPTION_INTERVAL_VALUE_OUT_OF_RANGE = "2200P";
059: public static final String DATA_EXCEPTION_INVALID_ARGUMENT_FOR_NATURAL_LOGARITHM = "2201E";
060: public static final String DATA_EXCEPTION_INVALID_ARGUMENT_FOR_POWER_FUNCTION = "2201F";
061: public static final String DATA_EXCEPTION_INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION = "2201G";
062: public static final String DATA_EXCEPTION_INVALID_CHARACTER_VALUE_FOR_CAST = "22018";
063: public static final String DATA_EXCEPTION_INVALID_DATETIME_FORMAT = "22007";
064: public static final String DATA_EXCEPTION_INVALID_ESCAPE_CHARACTER = "22019";
065: public static final String DATA_EXCEPTION_INVALID_ESCAPE_OCTET = "2200D";
066: public static final String DATA_EXCEPTION_INVALID_ESCAPE_SEQUENCE = "22025";
067: public static final String DATA_EXCEPTION_INVALID_INDICATOR_PARAMETER_VALUE = "22010";
068: public static final String DATA_EXCEPTION_INVALID_INTERVAL_FORMAT = "22006";
069: public static final String DATA_EXCEPTION_INVALID_PARAMETER_VALUE = "22023";
070: public static final String DATA_EXCEPTION_INVALID_PRECEDING_OR_FOLLOWING_SIZE_IN_WINDOW_FUNCTION = "22013";
071: public static final String DATA_EXCEPTION_INVALID_REGULAR_EXPRESSION = "2201B";
072: public static final String DATA_EXCEPTION_INVALID_REPEAT_ARGUMENT_IN_A_SAMPLE_CLAUSE = "2202G";
073: public static final String DATA_EXCEPTION_INVALID_SAMPLE_SIZE = "2202H";
074: public static final String DATA_EXCEPTION_INVALID_TIME_ZONE_DISPLACEMENT_VALUE = "22009";
075: public static final String DATA_EXCEPTION_INVALID_USE_OF_ESCAPE_CHARACTER = "2200C";
076: public static final String DATA_EXCEPTION_NULL_VALUE_NO_INDICATOR_PARAMETER = "2200G";
077: public static final String DATA_EXCEPTION_MOST_SPECIFIC_TYPE_MISMATCH = "22002";
078: public static final String DATA_EXCEPTION_MULTISET_VALUE_OVERFLOW = "2200Q";
079: public static final String DATA_EXCEPTION_NONCHARACTER_IN_UCS_STRING = "22029";
080: public static final String DATA_EXCEPTION_NULL_VALUE_NOT_ALLOWED = "22004";
081: public static final String DATA_EXCEPTION_NULL_VALUE_SUBSTITUTED_FOR_MUTATOR_SUBJECT_PARAMETER = "2202D";
082: public static final String DATA_EXCEPTION_NUMERIC_VALUE_OUT_OF_RANGE = "22003";
083: public static final String DATA_EXCEPTION_SEQUENCE_GENERATOR_LIMIT_EXCEEDED = "2200H";
084: public static final String DATA_EXCEPTION_STRING_DATA_LENGTH_MISMATCH = "22026";
085: public static final String DATA_EXCEPTION_STRING_DATA_RIGHT_TRUNCATION = "22001";
086: public static final String DATA_EXCEPTION_SUBSTRING_ERROR = "22011";
087: public static final String DATA_EXCEPTION_TRIM_ERROR = "22027";
088: public static final String DATA_EXCEPTION_UNTERMINATED_C_STRING = "22024";
089: public static final String DATA_EXCEPTION_ZERO_LENGTH_CHARACTER_STRING = "2200F";
090: public static final String DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST_NO_SUBCLASS = "2B000";
091: public static final String DIAGNOSTICS_EXCEPTION_NO_SUBCLASS = "0Z000";
092: public static final String DIAGNOSTICS_EXCEPTION_MAXIMUM_NUMBER_OF_DIAGNOSTICS_AREAS_EXCEEDED = "0Z001";
093: public static final String DYNAMIC_SQL_ERROR_NO_SUBCLASS = "07000";
094: public static final String DYNAMIC_SQL_ERROR_CURSOR_SPECIFICATION_CANNOT_BE_EXECUTED = "07003";
095: public static final String DYNAMIC_SQL_ERROR_INVALID_DATETIME_INTERVAL_CODE = "0700F";
096: public static final String DYNAMIC_SQL_ERROR_INVALID_DESCRIPTOR_COUNT = "07008";
097: public static final String DYNAMIC_SQL_ERROR_INVALID_DESCRIPTOR_INDEX = "07009";
098: public static final String DYNAMIC_SQL_ERROR_PREPARED_STATEMENT_NOT_A_CURSOR_SPECIFICATION = "07005";
099: public static final String DYNAMIC_SQL_ERROR_RESTRICTED_DATA_TYPE_ATTRIBUTE_VIOLATION = "07006";
100: public static final String DYNAMIC_SQL_ERROR_DATA_TYPE_TRANSFORM_FUNCTION_VIOLATION = "0700B";
101: public static final String DYNAMIC_SQL_ERROR_INVALID_DATA_TARGET = "0700D";
102: public static final String DYNAMIC_SQL_ERROR_INVALID_LEVEL_VALUE = "0700E";
103: public static final String DYNAMIC_SQL_ERROR_UNDEFINED_DATA_VALUE = "0700C";
104: public static final String DYNAMIC_SQL_ERROR_USING_CLAUSE_DOES_NOT_MATCH_DYNAMIC_PARAMETER_SPEC = "07001";
105: public static final String DYNAMIC_SQL_ERROR_USING_CLAUSE_DOES_NOT_MATCH_TARGET_SPEC = "07002";
106: public static final String DYNAMIC_SQL_ERROR_USING_CLAUSE_REQUIRED_FOR_DYNAMIC_PARAMETERS = "07004";
107: public static final String DYNAMIC_SQL_ERROR_USING_CLAUSE_REQUIRED_FOR_RESULT_FIELDS = "07007";
108: public static final String EXTERNAL_ROUTINE_EXCEPTION_NO_SUBCLASS = "38000";
109: public static final String EXTERNAL_ROUTINE_EXCEPTION_CONTAINING_SQL_NOT_PERMITTED = "38001";
110: public static final String EXTERNAL_ROUTINE_EXCEPTION_MODIFYING_SQL_DATA_NOT_PERMITTED = "38002";
111: public static final String EXTERNAL_ROUTINE_EXCEPTION_PROHIBITED_SQL_STATEMENT_ATTEMPTED = "38003";
112: public static final String EXTERNAL_ROUTINE_EXCEPTION_READING_SQL_DATA_NOT_PERMITTED = "38004";
113: public static final String EXTERNAL_ROUTINE_INVOCATION_EXCEPTION_NO_SUBCLASS = "39000";
114: public static final String EXTERNAL_ROUTINE_INVOCATION_EXCEPTION_NULL_VALUE_NOT_ALLOWED = "39004";
115: public static final String FEATURE_NOT_SUPPORTED_NO_SUBCLASS = "0A000";
116: public static final String FEATURE_NOT_SUPPORTED_MULTIPLE_ENVIRONMENT_TRANSACTIONS = "0A001";
117: public static final String INTEGRITY_CONSTRAINT_VIOLATION_NO_SUBCLASS = "23000";
118: public static final String INTEGRITY_CONSTRAINT_VIOLATION_RESTRICT_VIOLATION = "23001";
119: public static final String INVALID_AUTHORIZATION_SPECIFICATION_NO_SUBCLASS = "28000";
120: public static final String INVALID_CATALOG_NAME_NO_SUBCLASS = "3D000";
121: public static final String INVALID_CHARACTER_SET_NAME_NO_SUBCLASS = "2C000";
122: public static final String INVALID_COLLATION_NAME_NO_SUBCLASS = "2H000";
123: public static final String INVALID_CONDITION_NUMBER_NO_SUBCLASS = "35000";
124: public static final String INVALID_CONNECTION_NAME_NO_SUBCLASS = "2E000";
125: public static final String INVALID_CURSOR_NAME_NO_SUBCLASS = "34000";
126: public static final String INVALID_CURSOR_STATE_NO_SUBCLASS = "24000";
127: public static final String INVALID_GRANTOR_STATE_NO_SUBCLASS = "0L000";
128: public static final String INVALID_ROLE_SPECIFICATION = "0P000";
129: public static final String INVALID_SCHEMA_NAME_NO_SUBCLASS = "3F000";
130: public static final String INVALID_SCHEMA_NAME_LIST_SPECIFICATION_NO_SUBCLASS = "0E000";
131: public static final String INVALID_SQL_DESCRIPTOR_NAME_NO_SUBCLASS = "33000";
132: public static final String INVALID_SQL_INVOKED_PROCEDURE_REFERENCE_NO_SUBCLASS = "0M000";
133: public static final String INVALID_SQL_STATEMENT = "30000";
134: public static final String INVALID_SQL_STATEMENT_IDENTIFIER_NO_SUBCLASS = "30000";
135: public static final String INVALID_SQL_STATEMENT_NAME_NO_SUBCLASS = "26000";
136: public static final String INVALID_TRANSFORM_GROUP_NAME_SPECIFICATION_NO_SUBCLASS = "0S000";
137: public static final String INVALID_TRANSACTION_STATE_NO_SUBCLASS = "25000";
138: public static final String INVALID_TRANSACTION_STATE_ACTIVE_SQL_TRANSACTION = "25001";
139: public static final String INVALID_TRANSACTION_STATE_BRANCH_TRANSACTION_ALREADY_ACTIVE = "25002";
140: public static final String INVALID_TRANSACTION_STATE_HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL = "25008";
141: public static final String INVALID_TRANSACTION_STATE_INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION = "25003";
142: public static final String INVALID_TRANSACTION_STATE_INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION = "25004";
143: public static final String INVALID_TRANSACTION_STATE_NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION = "25005";
144: public static final String INVALID_TRANSACTION_STATE_READ_ONLY_SQL_TRANSACTION = "25006";
145: public static final String INVALID_TRANSACTION_STATE_SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED = "25007";
146: public static final String INVALID_TRANSACTION_INITIATION_NO_SUBCLASS = "0B000";
147: public static final String INVALID_TRANSACTION_TERMINATION_NO_SUBCLASS = "2D000";
148: public static final String LOCATOR_EXCEPTION_INVALID_SPECIFICATION = "0F001";
149: public static final String LOCATOR_EXCEPTION_NO_SUBCLASS = "0F000";
150: public static final String NO_DATA_NO_SUBCLASS = "02000";
151: public static final String NO_DATA_NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED = "02001";
152: public static final String REMOTE_DATABASE_ACCESS_NO_SUBCLASS = "HZ000";
153: public static final String SAVEPOINT_EXCEPTION_INVALID_SPECIFICATION = "3B001";
154: public static final String SAVEPOINT_EXCEPTION_NO_SUBCLASS = "3B000";
155: public static final String SAVEPOINT_EXCEPTION_TOO_MANY = "3B002";
156: public static final String SQL_ROUTINE_EXCEPTION_NO_SUBCLASS = "2F000";
157: public static final String SQL_ROUTINE_EXCEPTION_FUNCTION_EXECUTED_NO_RETURN_STATEMENT = "2F005";
158: public static final String SQL_ROUTINE_EXCEPTION_MODIFYING_SQL_DATA_NOT_PERMITTED = "2F002";
159: public static final String SQL_ROUTINE_EXCEPTION_PROHIBITED_SQL_STATEMENT_ATTEMPTED = "2F003";
160: public static final String SQL_ROUTINE_EXCEPTION_READING_SQL_DATA_NOT_PERMITTED = "2F004";
161: public static final String SUCCESSFUL_COMPLETION_NO_SUBCLASS = "00000";
162: public static final String SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION_NO_SUBCLASS = "42000";
163: public static final String SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION_IN_DIRECT_STATEMENT_NO_SUBCLASS = "2A000";
164: public static final String SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION_IN_DYNAMIC_STATEMENT_NO_SUBCLASS = "37000";
165: public static final String TARGET_TABLE_DISAGREES_WITH_CURSOR_SPECIFICATION_NO_SUBCLASS = "0T000";
166: public static final String TRANSACTION_ROLLBACK_NO_SUBCLASS = "40000";
167: public static final String TRANSACTION_ROLLBACK_INTEGRITY_CONSTRAINT_VIOLATION = "40002";
168: public static final String TRANSACTION_ROLLBACK_SERIALIZATION_FAILURE = "40001";
169: public static final String TRANSACTION_ROLLBACK_STATEMENT_COMPLETION_UNKNOWN = "40003";
170: public static final String TRIGGERED_DATA_CHANGE_VIOLATION_NO_SUBCLASS = "27000";
171: public static final String WARNING_NO_SUBCLASS = "01000";
172: public static final String WARNING_ADDITIONAL_RESULT_SETS_RETURNED = "0100D";
173: public static final String WARNING_ARRAY_DATA_RIGHT_TRUNCATION = "0102F";
174: public static final String WARNING_ATTEMPT_TO_RETURN_TOO_MANY_RESULT_SETS = "0100E";
175: public static final String WARNING_CURSOR_OPERATION_CONFLICT = "01001";
176: public static final String WARNING_DEFAULT_VALUE_TOO_LONG_FOR_INFORMATION_SCHEMA = "0100B";
177: public static final String WARNING_DISCONNECT_ERROR = "01002";
178: public static final String WARNING_DYNAMIC_RESULT_SETS_RETURNED = "0100C";
179: public static final String WARNING_INSUFFICIENT_ITEM_DESCRIPTOR_AREAS = "01005";
180: public static final String WARNING_NULL_VALUE_ELIMINATED_IN_SET_FUNCTION = "01003";
181: public static final String WARNING_PRIVILEGE_NOT_GRANTED = "01007";
182: public static final String WARNING_PRIVILEGE_NOT_REVOKED = "01006";
183: public static final String WARNING_QUERY_EXPRESSION_TOO_LONG_FOR_INFORMATION_SCHEMA = "0100A";
184: public static final String WARNING_SEARCH_CONDITION_TOO_LONG_FOR_INFORMATION_SCHEMA = "01009";
185: public static final String WARNING_STATEMENT_TOO_LONG_FOR_INFORMATION_SCHEMA = "0100F";
186: public static final String WARNING_STRING_DATA_RIGHT_TRUNCATION_WARNING = "01004";
187: public static final String WITH_CHECK_OPTION_VIOLATION_NO_SUBCLASS = "44000";
188: // The SQLState when calling next on a result set which is closed.
189: public static final String RESULT_SET_IS_CLOSED = "XCL16";
190: //The SQLState of the SQLExcepion thrown when a class for which
191: //isWrapperFor returns false is passed as a parameter to the
192: //unwrap method.
193: public static final String UNABLE_TO_UNWRAP = "XJ128";
194:
195: public static final String LANG_GRANT_REVOKE_WITH_LEGACY_ACCESS = "42Z60";
196: public static final String SHUTDOWN_DATABASE = "08006";
197: public static final String PROPERTY_UNSUPPORTED_CHANGE = "XCY02";
198: }
|