转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> SyBase >> 正文
InnoDB 中文参考手册 --- 13 出错处理         ★★★★

InnoDB 中文参考手册 --- 13 出错处理

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1573 更新时间:2009/4/22 23:09:05
InnoDB 中文参考手册 --- 犬犬(心帆)翻译

13 出错处理

InnoDB 的出错处理不总是与 ANSI SQL 指定的一致。依照 ANSI 标准,在一个 SQL 语句中的任何错误都将引起这条语句的回滚。InnoDB 有时只回滚语句的一部分,有时则是整个事务。 下面的列表详细说明了 InnoDB 的出错处理。

  • 如果用完了表空间内的文件空间,将会得到 MySQL 的 ''''Table is full'''' 错误,InnoDB 将回滚这条 SQL 语句。
  • 事务的死锁或锁定等待的超时将会使 InnoDB 回滚整个事务。
  • 一个重复键(duplicate key)只会回滚插入的细节行,甚至在如同 INSERT INTO ... SELECT ...的一个语句中。这或许会发生改变,所以如果在语句中没有指定 IGNORE 选项这个语句将产生回滚。
  • ''''row too long'''' 的错误将回滚整个 SQL 语句。
  • 其它的错误主要由 MySQL 的代码层发现,它们将回滚相应的 SQL 语句。

 

13.1 MySQL 返回的某些错误代码

 

  • 1005 ER_CANT_CREATE_TABLE 不能建立表。如果错误信息串引用 errno 150,那么表创建失败是由于外键约束没能正确的形成。
  • 1016 ER_CANT_OPEN_FILE 不能够通过 .frm 文件在 InnoDB 数据文件中找到 InnoDB 表。查看下面的“发现并修复数据字典错误的操作”章节。
  • 1114 ER_RECORD_FILE_FULL InnoDB 用光了表空间内的剩余空间。你必须增加一个新的数据文件。
  • 1205 ER_LOCK_WAIT_TIMEOUT 锁等待超时期满。事务被回滚。
  • 1213 ER_LOCK_DEADLOCK 事务死锁。需要重新运行事务。
  • 1216 ER_NO_REFERENCED_ROW 当试图增加一个新行时,但是没有父记录存在,外键约束失败。必须先添加父记录。
  • 1217 ER_ROW_IS_REFERENCED 删除一个有子记录存在的父行,外键约束失败。必须先删除子记录。

 

13.2 某些操作系统的错误编码

在 Unix 系统中,使用 perror 程序来显示操作系统错误编码的含义,它包含在 MySQL 的分发中。

下面的列表显示常见的 Linux 系统错误代码。

  • 1 EPERM
    Operation not permitted
    操作不许可
  • 2 ENOENT
    No such file or directory
    无此文件或目录
  • 3 ESRCH
    No such process
    无此过程
  • 4 EINTR
    Interrupted system call
    系统调用被禁止
  • 5 EIO
    I/O error
    I/O 错误
  • 6 ENXIO
    No such device or address
    无此器件或地址
  • 7 E2BIG
    Arg list too long
    Arg 列表太长
  • 8 ENOEXEC
    Exec format error
    Exec 格式错误
  • 9 EBADF
    Bad file number
    文件数目错误
  • 10 ECHILD
    No child processes
    无子过程
  • 11 EAGAIN
    Try again
    再试一遍
  • 12 ENOMEM
    Out of memory
    内存溢出
  • 13 EACCES
    Permission denied
    许可拒绝
  • 14 EFAULT
    Bad address
    错误的地址
  • 15 ENOTBLK
    Block device required
    需要块设备
  • 16 EBUSY
    Device or resource busy
    设备或资源忙
  • 17 EEXIST
    File exists
    文件存在
  • 18 EXDEV
    Cross-device link
    跨器链接
  • 19 ENODEV
    No such device
    无此设备
  • 20 ENOTDIR
    Not a directory
    不是一个目录
  • 21 EISDIR
    Is a directory
    是一个目录
  • 22 EINVAL
    Invalid argument
    无效的函数自变量
  • 23 ENFILE
    File table overflow
    文件表溢出
  • 24 EMFILE
    Too many open files
    打开的文件太多
  • 25 ENOTTY
    Inappropriate ioctl for device

  • 26 ETXTBSY
    Text file busy
    文本文件忙
  • 27 EFBIG
    File too large
    文件太大
  • 28 ENOSPC
    No space left on device
    磁盘空间不足
  • 29 ESPIPE
    Illegal seek
    不合法的寻找
  • 30 EROFS
    Read-only file system
    只读文件系统
  • 31 EMLINK
    Too many links
    太多的链接

 

下面的列表显示常见的 Windows 系统错误代码。

教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台