Type "perror #error_num" at the prompt, you can get what the error codes
mean from there.

ryan


> Hello,
>
> A few days ago I asked if anyone knows the numeric values of the
> Mysql error codes.  Nobody responded, so I looked through the source
> code to find the answer.  This info would be valuable if, for
> example, you wanted to programmatically handle certain types of
> errors.
>
> In the source distribution I found the file Docs/mysqld_error.txt,
> which I'm including here just in case anybody else had the same
> question.
>
> =====================================
>
>
> /* Copyright Abandoned 1997 TCX DataKonsult AB & Monty Program KB & Detron
HB
>     This file is public domain and comes with NO WARRANTY of any kind */
>
> #define ER_HASHCHK 1000
> "hashchk",
> #define ER_NISAMCHK 1001
> "isamchk",
> #define ER_NO 1002
> "NO",
> #define ER_YES 1003
> "YES",
> #define ER_CANT_CREATE_FILE 1004
> "Can't create file '%-.64s' (errno: %d)",
> #define ER_CANT_CREATE_TABLE 1005
> "Can't create table '%-.64s' (errno: %d)",
> #define ER_CANT_CREATE_DB 1006
> "Can't create database '%-.64s'. (errno: %d)",
> #define ER_DB_CREATE_EXISTS 1007
> "Can't create database '%-.64s'. Database exists",
> #define ER_DB_DROP_EXISTS 1008
> "Can't drop database '%-.64s'. Database doesn't exist",
> #define ER_DB_DROP_DELETE 1009
> "Error dropping database (can't delete '%-.64s', errno: %d)",
> #define ER_DB_DROP_RMDIR 1010
> "Error dropping database (can't rmdir '%-.64s', errno: %d)",
> #define ER_CANT_DELETE_FILE 1011
> "Error on delete of '%-.64s' (errno: %d)",
> #define ER_CANT_FIND_SYSTEM_REC 1012
> "Can't read record in system table",
> #define ER_CANT_GET_STAT 1013
> "Can't get status of '%-.64s' (errno: %d)",
> #define ER_CANT_GET_WD 1014
> "Can't get working directory (errno: %d)",
> #define ER_CANT_LOCK 1015
> "Can't lock file (errno: %d)",
> #define ER_CANT_OPEN_FILE 1016
> "Can't open file: '%-.64s'. (errno: %d)",
> #define ER_FILE_NOT_FOUND 1017
> "Can't find file: '%-.64s' (errno: %d)",
> #define ER_CANT_READ_DIR 1018
> "Can't read dir of '%-.64s' (errno: %d)",
> #define ER_CANT_SET_WD 1019
> "Can't change dir to '%-.64s' (errno: %d)",
> #define ER_CHECKREAD 1020
> "Record has changed since last read in table '%-.64s'",
> #define ER_DISK_FULL 1021
> "Disk full (%s). Waiting for someone to free some space....",
> #define ER_DUP_KEY 1022
> "Can't write, duplicate key in table '%-.64s'",
> #define ER_ERROR_ON_CLOSE 1023
> "Error on close of '%-.64s' (errno: %d)",
> #define ER_ERROR_ON_READ 1024
> "Error reading file '%-.64s' (errno: %d)",
> #define ER_ERROR_ON_RENAME 1025
> "Error on rename of '%-.64s' to '%-.64s' (errno: %d)",
> #define ER_ERROR_ON_WRITE 1026
> "Error writing file '%-.64s' (errno: %d)",
> #define ER_FILE_USED 1027
> "'%-.64s' is locked against change",
> #define ER_FILSORT_ABORT 1028
> "Sort aborted",
> #define ER_FORM_NOT_FOUND 1029
> "View '%-.64s' doesn't exist for '%-.64s'",
> #define ER_GET_ERRNO 1030
> "Got error %d from table handler",
> #define ER_ILLEGAL_HA 1031
> "Table handler for '%-.64s' doesn't have this option",
> #define ER_KEY_NOT_FOUND 1032
> "Can't find record in '%-.64s'",
> #define ER_NOT_FORM_FILE 1033
> "Incorrect information in file: '%-.64s'",
> #define ER_NOT_KEYFILE 1034
> "Incorrect key file for table: '%-.64s'. Try to repair it",
> #define ER_OLD_KEYFILE 1035
> "Old key file for table '%-.64s'; Repair it!",
> #define ER_OPEN_AS_READONLY 1036
> "Table '%-.64s' is read only",
> #define ER_OUTOFMEMORY 1037
> "Out of memory. Restart daemon and try again (needed %d bytes)",
> #define ER_OUT_OF_SORTMEMORY 1038
> "Out of sort memory. Increase daemon sort buffer size",
> #define ER_UNEXPECTED_EOF 1039
> "Unexpected eof found when reading file '%-.64s' (errno: %d)",
> #define ER_CON_COUNT_ERROR 1040
> "Too many connections",
> #define ER_OUT_OF_RESOURCES 1041
> "Out of memory;  Check if mysqld or some other process uses all
> available memory. If not you may have to use 'ulimit' to allow mysqld
> to use more memory or you can add more swap space",
> #define ER_BAD_HOST_ERROR 1042
> "Can't get hostname for your address",
> #define ER_HANDSHAKE_ERROR 1043
> "Bad handshake",
> #define ER_DBACCESS_DENIED_ERROR 1044
> "Access denied for user: '%-.32s@%-.64s' to database '%-.64s'",
> #define ER_ACCESS_DENIED_ERROR 1045
> "Access denied for user: '%-.32s@%-.64s' (Using password: %s)",
> #define ER_NO_DB_ERROR 1046
> "No Database Selected",
> #define ER_UNKNOWN_COM_ERROR 1047
> "Unknown command",
> #define ER_BAD_NULL_ERROR 1048
> "Column '%-.64s' cannot be null",
> #define ER_BAD_DB_ERROR 1049
> "Unknown database '%-.64s'",
> #define ER_TABLE_EXISTS_ERROR 1050
> "Table '%-.64s' already exists",
> #define ER_BAD_TABLE_ERROR 1051
> "Unknown table '%-.64s'",
> #define ER_NON_UNIQ_ERROR 1052
> "Column: '%-.64s' in %-.64s is ambiguous",
> #define ER_SERVER_SHUTDOWN 1053
> "Server shutdown in progress",
> #define ER_BAD_FIELD_ERROR 1054
> "Unknown column '%-.64s' in '%-.64s'",
> #define ER_WRONG_FIELD_WITH_GROUP 1055
> "'%-.64s' isn't in GROUP BY",
> #define ER_WRONG_GROUP_FIELD 1056
> "Can't group on '%-.64s'",
> #define ER_WRONG_SUM_SELECT 1057
> "Statement has sum functions and columns in same statement",
> #define ER_WRONG_VALUE_COUNT 1058
> "Column count doesn't match value count",
> #define ER_TOO_LONG_IDENT 1059
> "Identifier name '%-.100s' is too long",
> #define ER_DUP_FIELDNAME 1060
> "Duplicate column name '%-.64s'",
> #define ER_DUP_KEYNAME 1061
> "Duplicate key name '%-.64s'",
> #define ER_DUP_ENTRY 1062
> "Duplicate entry '%-.64s' for key %d",
> #define ER_WRONG_FIELD_SPEC 1063
> "Incorrect column specifier for column '%-.64s'",
> #define ER_PARSE_ERROR 1064
> "%s near '%-.80s' at line %d",
> #define ER_EMPTY_QUERY 1065
> "Query was empty",
> #define ER_NONUNIQ_TABLE 1066
> "Not unique table/alias: '%-.64s'",
> #define ER_INVALID_DEFAULT 1067
> "Invalid default value for '%-.64s'",
> #define ER_MULTIPLE_PRI_KEY 1068
> "Multiple primary key defined",
> #define ER_TOO_MANY_KEYS 1069
> "Too many keys specified. Max %d keys allowed",
> #define ER_TOO_MANY_KEY_PARTS 1070
> "Too many key parts specified. Max %d parts allowed",
> #define ER_TOO_LONG_KEY 1071
> "Specified key was too long. Max key length is %d",
> #define ER_KEY_COLUMN_DOES_NOT_EXITS 1072
> "Key column '%-.64s' doesn't exist in table",
> #define ER_BLOB_USED_AS_KEY 1073
> "BLOB column '%-.64s' can't be used in key specification with the
> used table type",
> #define ER_TOO_BIG_FIELDLENGTH 1074
> "Too big column length for column '%-.64s' (max = %d). Use BLOB instead",
> #define ER_WRONG_AUTO_KEY 1075
> "Incorrect table definition; There can only be one auto column and it
> must be defined as a key",
> #define ER_READY 1076
> "%s: ready for connections\n",
> #define ER_NORMAL_SHUTDOWN 1077
> "%s: Normal shutdown\n",
> #define ER_GOT_SIGNAL 1078
> "%s: Got signal %d. Aborting!\n",
> #define ER_SHUTDOWN_COMPLETE 1079
> "%s: Shutdown Complete\n",
> #define ER_FORCING_CLOSE 1080
> "%s: Forcing close of thread %ld  user: '%-.32s'\n",
> #define ER_IPSOCK_ERROR 1081
> "Can't create IP socket",
> #define ER_NO_SUCH_INDEX 1082
> "Table '%-.64s' has no index like the one used in CREATE INDEX.
> Recreate the table",
> #define ER_WRONG_FIELD_TERMINATORS 1083
> "Field separator argument is not what is expected. Check the manual","
> #define ER_BLOBS_AND_NO_TERMINATED 1084
> "You can't use fixed rowlength with BLOBs. Please use 'fields terminated
by'.",
> #define ER_TEXTFILE_NOT_READABLE 1085
> "The file '%-.64s' must be in the database directory or be readable by
all",
> #define ER_FILE_EXISTS_ERROR 1086
> "File '%-.80s' already exists",
> #define ER_LOAD_INFO 1087
> "Records: %ld  Deleted: %ld  Skipped: %ld  Warnings: %ld",
> #define ER_ALTER_INFO 1088
> "Records: %ld  Duplicates: %ld",
> #define ER_WRONG_SUB_KEY 1089
> "Incorrect sub part key. The used key part isn't a string or the used
> length is longer than the key part",
> #define ER_CANT_REMOVE_ALL_FIELDS 1090
> "You can't delete all columns with ALTER TABLE. Use DROP TABLE instead",
> #define ER_CANT_DROP_FIELD_OR_KEY 1091
> "Can't DROP '%-.64s'. Check that column/key exists",
> #define ER_INSERT_INFO 1092
> "Records: %ld  Duplicates: %ld  Warnings: %ld",
> #define ER_INSERT_TABLE_USED 1093
> "INSERT TABLE '%-.64s' isn't allowed in FROM table list",
> #define ER_NO_SUCH_THREAD 1094
> "Unknown thread id: %lu",
> #define ER_KILL_DENIED_ERROR 1095
> "You are not owner of thread %lu",
> #define ER_NO_TABLES_USED 1096
> "No tables used",
> #define ER_TOO_BIG_SET 1097
> "Too many strings for column %-.64s and SET",
> #define ER_NO_UNIQUE_LOGFILE 1098
> "Can't generate a unique log-filename %-.64s.(1-999)\n",
> #define ER_TABLE_NOT_LOCKED_FOR_WRITE 1099
> "Table '%-.64s' was locked with a READ lock and can't be updated",
> #define ER_TABLE_NOT_LOCKED 1100
> "Table '%-.64s' was not locked with LOCK TABLES",
> #define ER_BLOB_CANT_HAVE_DEFAULT 1101
> "BLOB column '%-.64s' can't have a default value",
> #define ER_WRONG_DB_NAME 1102
> "Incorrect database name '%-.100s'",
> #define ER_WRONG_TABLE_NAME 1103
> "Incorrect table name '%-.100s'",
> #define ER_TOO_BIG_SELECT 1104
> "The SELECT would examine too many records and probably take a very
> long time. Check your WHERE and use SET OPTION SQL_BIG_SELECTS=1 if
> the SELECT is ok",
> #define ER_UNKNOWN_ERROR 1105
> "Unknown error",
> #define ER_UNKNOWN_PROCEDURE 1106
> "Unknown procedure '%-.64s'",
> #define ER_WRONG_PARAMCOUNT_TO_PROCEDURE 1107
> "Incorrect parameter count to procedure '%-.64s'",
> #define ER_WRONG_PARAMETERS_TO_PROCEDURE 1108
> "Incorrect parameters to procedure '%-.64s'",
> #define ER_UNKNOWN_TABLE 1109
> "Unknown table '%-.64s' in %-.32s",
> #define ER_FIELD_SPECIFIED_TWICE 1110
> "Column '%-.64s' specified twice",
> #define ER_INVALID_GROUP_FUNC_USE 1111
> "Invalid use of group function",
> #define ER_UNSUPPORTED_EXTENSION 1112
> "Table '%-.64s' uses an extension that doesn't exist in this MySQL
version",
> #define ER_TABLE_MUST_HAVE_COLUMNS 1113
> "A table must have at least 1 column",
> #define ER_RECORD_FILE_FULL 1114
> "The table '%-.64s' is full",
> #define ER_UNKNOWN_CHARACTER_SET 1115
> "Unknown character set: '%-.64s'",
> #define ER_TOO_MANY_TABLES 1116
> "Too many tables. MySQL can only use %d tables in a join",
> #define ER_TOO_MANY_FIELDS 1117
> "Too many columns",
> #define ER_TOO_BIG_ROWSIZE 1118
> "Too big row size. The maximum row size, not counting BLOBs, is %d.
> You have to change some fields to BLOBs",
> #define ER_STACK_OVERRUN 1119
> "Thread stack overrun:  Used: %ld of a %ld stack.  Use 'mysqld -O
> thread_stack=#' to specify a bigger stack if needed",
> #define ER_WRONG_OUTER_JOIN 1120
> "Cross dependency found in OUTER JOIN.  Examine your ON conditions",
> #define ER_NULL_COLUMN_IN_INDEX 1121
> "Column '%-.64s' is used with UNIQUE or INDEX but is not defined as NOT
NULL",
> #define ER_CANT_FIND_UDF 1122
> "Can't load function '%-.64s'",
> #define ER_CANT_INITIALIZE_UDF 1123
> "Can't initialize function '%-.64s'; %-.80s",
> #define ER_UDF_NO_PATHS 1124
> "No paths allowed for shared library",
> #define ER_UDF_EXISTS 1125
> "Function '%-.64s' already exist",
> #define ER_CANT_OPEN_LIBRARY 1126
> "Can't open shared library '%-.64s' (errno: %d %-.64s)",
> #define ER_CANT_FIND_DL_ENTRY 1127
> "Can't find function '%-.64s' in library'",
> #define ER_FUNCTION_NOT_DEFINED 1128
> "Function '%-.64s' is not defined",
> #define ER_HOST_IS_BLOCKED 1129
> "Host '%-.64s' is blocked because of many connection errors.  Unblock
> with 'mysqladmin flush-hosts'",
> #define ER_HOST_NOT_PRIVILEGED 1130
> "Host '%-.64s' is not allowed to connect to this MySQL server",
> #define ER_PASSWORD_ANONYMOUS_USER 1131
> "You are using MySQL as an anonymous users and anonymous users are
> not allowed to change passwords",
> #define ER_PASSWORD_NOT_ALLOWED 1132
> "You must have privileges to update tables in the mysql database to
> be able to change passwords for others",
> #define ER_PASSWORD_NO_MATCH 1133
> "Can't find any matching row in the user table",
> #define ER_UPDATE_INFO 1134
> "Rows matched: %ld  Changed: %ld  Warnings: %ld",
> #define ER_CANT_CREATE_THREAD 1135
> "Can't create a new thread (errno %d). If you are not out of
> available memory, you can consult the manual for a possible
> OS-dependent bug",
> #define ER_WRONG_VALUE_COUNT_ON_ROW 1136
> "Column count doesn't match value count at row %ld",
> #define ER_CANT_REOPEN_TABLE 1137
> "Can't reopen table: '%-.64s'",
> #define ER_INVALID_USE_OF_NULL 1138
> "Invalid use of NULL value",
> #define ER_REGEXP_ERROR 1139
> "Got error '%-.64s' from regexp",
> #define ER_MIX_OF_GROUP_FUNC_AND_FIELDS 1140
> "Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP
> columns is illegal if there is no GROUP BY clause",
> #define ER_NONEXISTING_GRANT 1141
> "There is no such grant defined for user '%-.32s' on host '%-.64s'",
> #define ER_TABLEACCESS_DENIED_ERROR 1142
> "%-.16s command denied to user: '%-.32s@%-.64s' for table '%-.64s'",
> #define ER_COLUMNACCESS_DENIED_ERROR 1143
> "%-.16s command denied to user: '%-.32s@%-.64s' for column '%-.64s'
> in table '%-.64s'",
> #define ER_ILLEGAL_GRANT_FOR_TABLE 1144
> "Illegal GRANT/REVOKE command. Please consult the manual which
> privileges can be used.",
> #define ER_GRANT_WRONG_HOST_OR_USER 1145
> "The host or user argument to GRANT is too long",
> #define ER_NO_SUCH_TABLE 1146
> "Table '%-.64s.%-.64s' doesn't exist",
> #define ER_NONEXISTING_TABLE_GRANT 1147
> "There is no such grant defined for user '%-.32s' on host '%-.64s' on
> table '%-.64s'",
> #define ER_NOT_ALLOWED_COMMAND 1148
> "The used command is not allowed with this MySQL version",
> #define ER_SYNTAX_ERROR 1149
> "You have an error in your SQL syntax",
> #define ER_DELAYED_CANT_CHANGE_LOCK 1150
> "Delayed insert thread couldn't get requested lock for table %-.64s",
> #define ER_TOO_MANY_DELAYED_THREADS 1151
> "Too many delayed threads in use",
> #define ER_ABORTING_CONNECTION 1152
> "Aborted connection %ld to db: '%-.64s' user: '%-.32s' (%-.64s)",
> #define ER_NET_PACKET_TOO_LARGE 1153
> "Got a packet bigger than 'max_allowed_packet'",
> #define ER_NET_READ_ERROR_FROM_PIPE 1154
> "Got a read error from the connection pipe",
> #define ER_NET_FCNTL_ERROR 1155
> "Got an error from fcntl()",
> #define ER_NET_PACKETS_OUT_OF_ORDER 1156
> "Got packets out of order",
> #define ER_NET_UNCOMPRESS_ERROR 1157
> "Couldn't uncompress communication packet",
> #define ER_NET_READ_ERROR 1158
> "Got an error reading communication packets",
> #define ER_NET_READ_INTERRUPTED 1159
> "Got timeout reading communication packets",
> #define ER_NET_ERROR_ON_WRITE 1160
> "Got an error writing communication packets",
> #define ER_NET_WRITE_INTERRUPTED 1161
> "Got timeout writing communication packets",
> #define ER_TOO_LONG_STRING 1162
> "Result string is longer than max_allowed_packet",
> #define ER_TABLE_CANT_HANDLE_BLOB 1163
> "The used table type doesn't support BLOB/TEXT columns",
> #define ER_TABLE_CANT_HANDLE_AUTO_INCREMENT 1164
> "The used table type doesn't support AUTO_INCREMENT columns",
> #define ER_DELAYED_INSERT_TABLE_LOCKED 1165
> "INSERT DELAYED can't be used with table '%-.64s', because it is
> locked with LOCK TABLES",
> #define ER_WRONG_COLUMN_NAME 1166
> "Incorrect column name '%-.100s'",
> #define ER_WRONG_KEY_COLUMN 1167
> "The used table handler can't index column '%-.64s'",
> #define ER_WRONG_MRG_TABLE 1168
> "All tables in the MERGE table are not identically defined",
> #define ER_DUP_UNIQUE 1169
> "Can't write, because of unique constraint, to table '%-.64s'",
> #define ER_BLOB_KEY_WITHOUT_LENGTH 1170
> "BLOB column '%-.64s' used in key specification without a key length",
> #define ER_PRIMARY_CANT_HAVE_NULL 1171
> "All parts of a PRIMARY KEY must be NOT NULL;  If you need NULL in a
> key, use UNIQUE instead",
> #define ER_TOO_MANY_ROWS 1172
> "Result consisted of more than one row",
> #define ER_REQUIRES_PRIMARY_KEY 1173
> "This table type requires a primary key",
> #define ER_NO_RAID_COMPILED 1174
> "This version of MySQL is not compiled with RAID support",
> #define ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE 1175
> "You are using safe update mode and you tried to update a table
> without a WHERE that uses a KEY column",
>
> ---------------------------------------------------------------------
> Before posting, please check:
>    http://www.mysql.com/manual.php   (the manual)
>    http://lists.mysql.com/           (the list archive)
>
> To request this thread, e-mail <[EMAIL PROTECTED]>
> To unsubscribe, e-mail <[EMAIL PROTECTED]>
> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
>


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to