truncate

王朝百科·作者佚名  2010-06-15
窄屏简体版  字體: |||超大  

相关函数:open, ftruncate

表头文件:#include <unistd.h>

定义函数:int truncate(const char *path, off_t length);

函数说明:truncate()会将参数path指定的文件大小改为参数length指定的大小。 如果原来的文件大小比参数length大,则超过的部分会被删除

返回值 :执行成功则返回0, 失败返回-1, 错误原因存于errno

错误代码:EACCESS 参数path所指定的文件无法存取

EROFS 欲写入的文件存在于只读文件系统内

EFAULT 参数path指针超出可存取空间

EINVAL 参数path包含不合法字符

ENAMETOOLONG 参数path太长

ENOTDIR 参数path路径并非一目录

EISDIR 参数path指向一目录

ETXTBUSY 参数path所指的文件为共享程序,而且正被执行中

ELOOP 参数path有过多符号连接问题

EIO I/O存取错误

数据库操作的sql语句:

使用方法:

truncate table table_name;

操作特性:

truncate 只删除表中的所有数据,不删除表的结构;

truncate 是ddl操作立即生效,原数据不放到rollback segment中,不能回滚.,操作不触发trigger.;

truncate 语句缺省情况下将空间释放到 minextents个 extent,除非使用reuse storage;

truncate 会将高水线复位(回到最开始)。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航