MSSQL编程:疾速转移数据的办法
对于insert操作,只需要把event_type改成DELETE_ROWS_EVENT;对于delete操作,改成WRITE_ROWS_EVENT数据假如你要把ORACLE里的大批数据(80M以上)转移到别的的用户,别的的表空间里。能够用上面先容的疾速转移数据的办法。
1、建新表的体例
createtabletarget_tablenametablespacetarget_tablespace_namenologging
pctfree10pctused60
storage(initial5Mnext5Mminextents1maxextentsunlimitedpctincrease0)
asselect*fromusername.source_tablenamewhere前提;
注重事项:新建的表没有本来表的索引和默许值,
只要非空(notnull)的束缚素前提能够承继过去,
别的的束缚前提或索引必要从头创建.
2、间接拔出的办法
INSERT/*+APPEND*/INTOtarget_tablename
SELECT*FROMusername.source_tablenamewhere前提;
COMMIT;
注重事项:
用INSERT/*+APPEND*/的办法会对target_tablename发生级别为6的独有锁,
假如运转此命令时另有对target_tablename的DML操纵会列队在它前面,
对OLTP体系在用的表操纵是分歧适的。
申明:这两种办法转移数据时没有效SGA里数据缓冲区和事物处置的回滚段,也不写联机事物日记,
就象数据库装载工具SQLLOAD一样间接把数据写到物理文件,速率是很快的。
在ORACLE8I今后的版本都可使用.
有了rowbase的binlog后,我们来分析一下怎么实现闪回。平时的DML无非三种操作,增删改,先说三种操作的日志格式。 groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。 从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。 另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程); 连做梦都在想页面结构是怎么样的,绝非虚言 这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。 财务软件要用SQL也只是后台的数据库而已,软件都是成品的,当然多学东西肯定是有好处的.. 代替了原来VB式的错误判断。比Oracle高级不少。 不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关
页:
[1]