B.3.2Client 端错误消息参考
Client 端错误消息源自 MySQLClient 端库。这是示例错误消息,如mysqlClient 端显示:
shell> mysql -h no-such-host
ERROR 2005 (HY000): Unknown MySQL server host 'no-such-host' (0)
每个 Client 端错误消息均包含错误代码,SQLSTATE 值和消息字符串,如第 B.1 节“错误消息的源和组件”中所述。如第 B.2 节“错误信息接口”中所述,这些组件可用。对于 Client 端错误,SQLSTATE 值始终为'HY000'
(一般错误),因此对于区分一个 Client 端错误与另一个 Client 端错误没有意义。
Client 端库还可以将来自服务器端并由 Client 端从服务器接收到的任何错误托管给 Client 端程序。有关服务器端错误的列 table,请参见第 B.3.1 节“服务器错误消息参考”。
除了以下列 table 中的错误,Client 端库还可以生成错误消息,这些错误消息的错误代码范围在 1 到 999 之间。请参阅第 B.3.3 节“全局错误消息参考”
- 错误编号:
2000
;符号:CR_UNKNOWN_ERROR;
讯息:未知的 MySQL 错误
- 错误编号:
2001
;符号:CR_SOCKET_CREATE_ERROR;
消息:无法创建 UNIX 套接字(%d)
- 错误编号:
2002
;符号:CR_CONNECTION_ERROR;
消息:无法通过套接字'%s'(%d)连接到本地 MySQL 服务器
- 错误编号:
2003
;符号:CR_CONN_HOST_ERROR;
消息:无法连接到'%s'(%d)上的 MySQL 服务器
- 错误编号:
2004
;符号:CR_IPSOCK_ERROR;
消息:无法创建 TCP/IP 套接字(%d)
- 错误编号:
2005
;符号:CR_UNKNOWN_HOST;
消息:未知的 MySQL 服务器主机'%s'(%d)
- 错误编号:
2006
;符号:CR_SERVER_GONE_ERROR;
消息:MySQL 服务器已消失
- 错误编号:
2007
;符号:CR_VERSION_ERROR;
消息:协议不匹配;服务器版本=%d,Client 端版本=%d
- 错误编号:
2008
;符号:CR_OUT_OF_MEMORY;
消息:MySQLClient 端内存不足
- 错误编号:
2009
;符号:CR_WRONG_HOST_INFO;
消息:错误的主机信息
- 错误编号:
2010
;符号:CR_LOCALHOST_CONNECTION;
消息:通过 UNIX 套接字的 Localhost
- 错误编号:
2011
;符号:CR_TCP_CONNECTION;
讯息:%s 通过 TCP/IP
- 错误编号:
2012
;符号:CR_SERVER_HANDSHAKE_ERR;
消息:服务器握手中的错误
- 错误编号:
2013
;符号:CR_SERVER_LOST;
消息:查询期间与 MySQL 服务器的连接断开
- 错误编号:
2014
;符号:CR_COMMANDS_OUT_OF_SYNC;
消息:命令不同步;您现在不能运行此命令
命令执行 Sequences 不正确。当调用的函数不适用于当前连接状态时,会发生此错误。例如,如果调用mysql_stmt_fetch()的次数不足以读取整个结果集(即,没有足够的时间返回MYSQL_NO_DATA
),则随后的 C API 调用可能会发生此错误。
- 错误编号:
2015
;符号:CR_NAMEDPIPE_CONNECTION;
消息:命名管道:%s
- 错误编号:
2016
;符号:CR_NAMEDPIPEWAIT_ERROR;
消息:无法 await 命名管道托管:%s 管道:%s(%lu)
- 错误编号:
2017
;符号:CR_NAMEDPIPEOPEN_ERROR;
消息:无法打开到主机的命名管道:%s 管道:%s(%lu)
- 错误编号:
2018
;符号:CR_NAMEDPIPESETSTATE_ERROR;
消息:无法将命名管道的状态设置为主机:%s 管道:%s(%lu)
- 错误编号:
2019
;符号:CR_CANT_READ_CHARSET;
消息:无法初始化字符集%s(路径:%s)
- 错误编号:
2020
;符号:CR_NET_PACKET_TOO_LARGE;
讯息:收到的封包大于'max_allowed_packet'个字节
- 错误编号:
2021
;符号:CR_EMBEDDED_CONNECTION;
消息:嵌入式服务器
- 错误编号:
2022
;符号:CR_PROBE_SLAVE_STATUS;
消息:显示从状态错误:
- 错误编号:
2023
;符号:CR_PROBE_SLAVE_HOSTS;
消息:SHOW SLAVE HOSTS 上的错误:
- 错误编号:
2024
;符号:CR_PROBE_SLAVE_CONNECT;
消息:连接到从站时出错:
- 错误编号:
2025
;符号:CR_PROBE_MASTER_CONNECT;
消息:连接到主站时出错:
- 错误编号:
2026
;符号:CR_SSL_CONNECTION_ERROR;
消息:SSL 连接错误:%s
- 错误编号:
2027
;符号:CR_MALFORMED_PACKET;
消息:格式错误的数据包
- 错误编号:
2028
;符号:CR_WRONG_LICENSE;
消息:此 Client 端库仅许可用于具有'%s'许可证的 MySQL 服务器
- 错误编号:
2029
;符号:CR_NULL_POINTER;
消息:无效使用空指针
- 错误编号:
2030
;符号:CR_NO_PREPARE_STMT;
消息:声明未准备好
- 错误编号:
2031
;符号:CR_PARAMS_NOT_BOUND;
消息:在准备好的语句中没有为参数提供数据
- 错误编号:
2032
;符号:CR_DATA_TRUNCATED;
消息:数据被截断
- 错误编号:
2033
;符号:CR_NO_PARAMETERS_EXISTS;
消息:语句中不存在任何参数
- 错误编号:
2034
;符号:CR_INVALID_PARAMETER_NO;
消息:无效的参数号
mysql_stmt_fetch_column()的列号无效。
mysql_stmt_send_long_data()的参数编号无效。
密钥名称为空或mysql_options4()的连接属性数据量超过 64KB 限制。
- 错误编号:
2035
;符号:CR_INVALID_BUFFER_USE;
消息:无法发送非字符串/非二进制数据类型的长数据(参数:%d)
- 错误编号:
2036
;符号:CR_UNSUPPORTED_PARAM_TYPE;
消息:使用不受支持的缓冲区类型:%d(参数:%d)
- 错误编号:
2037
;符号:CR_SHARED_MEMORY_CONNECTION;
消息:共享内存:%s
- 错误编号:
2038
;符号:CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR;
消息:无法打开共享内存;Client 端无法创建请求事件(%lu)
- 错误编号:
2039
;符号:CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR;
消息:无法打开共享内存;没有收到来自服务器的应答事件(%lu)
- 错误编号:
2040
;符号:CR_SHARED_MEMORY_CONNECT_FILE_MAP_ERROR;
消息:无法打开共享内存;服务器无法分配文件 Map(%lu)
- 错误编号:
2041
;符号:CR_SHARED_MEMORY_CONNECT_MAP_ERROR;
消息:无法打开共享内存;服务器无法获取指向文件 Map 的指针(%lu)
- 错误编号:
2042
;符号:CR_SHARED_MEMORY_FILE_MAP_ERROR;
消息:无法打开共享内存;Client 端无法分配文件 Map(%lu)
- 错误编号:
2043
;符号:CR_SHARED_MEMORY_MAP_ERROR;
消息:无法打开共享内存;Client 端无法获取文件 Map 指针(%lu)
- 错误编号:
2044
;符号:CR_SHARED_MEMORY_EVENT_ERROR;
消息:无法打开共享内存;Client 端无法创建%s 事件(%lu)
- 错误编号:
2045
;符号:CR_SHARED_MEMORY_CONNECT_ABANDONED_ERROR;
消息:无法打开共享内存;服务器无应答(%lu)
- 错误编号:
2046
;符号:CR_SHARED_MEMORY_CONNECT_SET_ERROR;
消息:无法打开共享内存;无法将请求事件发送到服务器(%lu)
- 错误编号:
2047
;符号:CR_CONN_UNKNOW_PROTOCOL;
消息:协议错误或未知
- 错误编号:
2048
;符号:CR_INVALID_CONN_HANDLE;
消息:无效的连接句柄
- 错误编号:
2049
;符号:CR_SECURE_AUTH;
消息:使用旧(4.1.1 之前)身份验证协议的连接被拒绝(启用了 Client 端选项“ secure_auth”)
CR_SECURE_AUTH在 5.7.4 之后被删除。
- 错误编号:
2049
;符号:CR_UNUSED_1;
消息:使用旧(4.1.1 之前)身份验证协议的连接被拒绝(启用了 Client 端选项“ secure_auth”)
CR_UNUSED_1已在 5.7.5 中添加。
- 错误编号:
2050
;符号:CR_FETCH_CANCELED;
消息:行检索已被 mysql_stmt_close()调用取消
- 错误编号:
2051
;符号:CR_NO_DATA;
消息:尝试读取列而不先获取行
- 错误编号:
2052
;符号:CR_NO_STMT_METADATA;
消息:准备好的语句不包含元数据
- 错误编号:
2053
;符号:CR_NO_RESULT_SET;
消息:在没有与该语句关联的结果集的情况下尝试读取行
- 错误编号:
2054
;符号:CR_NOT_IMPLEMENTED;
消息:此功能尚未实现
- 错误编号:
2055
;符号:CR_SERVER_LOST_EXTENDED;
消息:在“%s”处与 MySQL 服务器的连接断开,系统错误:%d
- 错误编号:
2056
;符号:CR_STMT_CLOSED;
消息:由于前面的%s()调用而间接关闭了语句
- 错误编号:
2057
;符号:CR_NEW_STMT_METADATA;
消息:结果集中的列数与绑定缓冲区的数不同。您必须重置该语句,重新绑定结果集列,然后再次执行该语句
- 错误编号:
2058
;符号:CR_ALREADY_CONNECTED;
消息:此句柄已连接。每个连接使用单独的手柄。
- 错误编号:
2059
;符号:CR_AUTH_PLUGIN_CANNOT_LOAD;
消息:身份验证插件'%s'无法加载:%s
- 错误编号:
2060
;符号:CR_DUPLICATE_CONNECTION_ATTR;
消息:已经有一个具有相同名称的属性
为mysql_options4()指定了重复的连接属性名称。
- 错误编号:
2061
;符号:CR_AUTH_PLUGIN_ERR;
消息:身份验证插件'%s'报告错误:%s
CR_AUTH_PLUGIN_ERR已在 5.7.1 中添加。
- 错误编号:
2062
;符号:CR_INSECURE_API_ERR;
消息:不安全的 API 函数调用:'%s'改用:'%s'
检测到不安全的函数调用。修改应用程序以使用建议的替代功能。
在 5.7.6 中添加了CR_INSECURE_API_ERR。