oracle、sqlserver和mysql临时表

1 oracle临时表分为会话级和事务级,oracle临时表不管是会话级还是事务级在回话结束或者事务结束之后表结构和元数据都会存储在磁盘里,不会自动删除,需要手工会删除。 ①会话级建表语句 1 create global temporary table material_tmp_1( id varchar2(10) ) on commit preserve rows; 2 create global temporary table material_tmp_1 on commit preserve rows as seelct * from bd_material ②事务级建表语句 1 create global temporay table material_tmp_1(id varchar2(10)) on commit delete rows; 1 create global temporay table material_tmp_1 on commit delete rows as select * from bd_material; 2 sqlserver 临时表,sqlserver临时表和oracle有些不同,sqlserve的会话级临时表只存在于内存中,仅在当前会话可见,会话结束后sqlsever会自动的删除表结构、表的元数据和数据,全局临时表对全部会话可见。sqlserver的临时表建表和普通表是一样的,只是会话级临时表在表名加上#前缀,全局临时表加上##前缀。 3 mysql临时表 MySQL临时表也分成两种,1是全局临时表、2是临时表 1 全局临时表(也叫内存表),mysql的全局临时表和oracle、sqlserver的事务级临时表、全局临时表一样,都是对所有会话可以,表结构和元数据保存在data目录下的tablename.frm文件中。 2 临时表只在当前会话可见,当会话结束mysql会自动删除表(包括表结构、元数据和数据) 一个客户端默认可以同时打开临时表最多是32个,这是可以调整,调试服务段的max_tmp_tables即可。 临时表和内存表所使用内存大小可以通过My.cnf中的max_heap_table_size、tmp_table_size指定。 内存表建表语句 create temporary material_tmp_1(id varchar(10)) engine=menory;

转载于:https://my.oschina.net/u/3739402/blog/1632741

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值