<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-cn">
		<id>http://wiki.tomtalk.net/index.php?action=history&amp;feed=atom&amp;title=Oracle</id>
		<title>Oracle - 版本历史</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.tomtalk.net/index.php?action=history&amp;feed=atom&amp;title=Oracle"/>
		<link rel="alternate" type="text/html" href="http://wiki.tomtalk.net/index.php?title=Oracle&amp;action=history"/>
		<updated>2026-04-24T11:20:17Z</updated>
		<subtitle>本wiki的该页面的版本历史</subtitle>
		<generator>MediaWiki 1.24.2</generator>

	<entry>
		<id>http://wiki.tomtalk.net/index.php?title=Oracle&amp;diff=4505&amp;oldid=prev</id>
		<title>Tom：/* oracle数据库导出、导入 */</title>
		<link rel="alternate" type="text/html" href="http://wiki.tomtalk.net/index.php?title=Oracle&amp;diff=4505&amp;oldid=prev"/>
				<updated>2016-06-01T09:46:41Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;oracle数据库导出、导入&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
==oracle中in和exists的区别==&lt;br /&gt;
&lt;br /&gt;
in 是把外表和内表作hash join，而exists是对外表作loop，每次loop再对内表进行查询。&lt;br /&gt;
&lt;br /&gt;
一直以来认为exists比in效率高的说法是不准确的。如果查询的两个表大小相当，那么用in和exists差别不大。&lt;br /&gt;
&lt;br /&gt;
如果两个表中一个较小，一个是大表，则子查询表大的用exists，子查询表小的用in。&lt;br /&gt;
&lt;br /&gt;
==常用SQL==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;SQL&amp;quot;&amp;gt;&lt;br /&gt;
select max(sn) from (select card_no, SUBSTR(card_no,5) as sn from xzh_card_no where card_no like '6688%') &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Oracle字符串连接的方法==&lt;br /&gt;
&lt;br /&gt;
和其他数据库系统类似，Oracle字符串连接使用“||”进行字符串拼接，其使用方式和MSSQLServer中的加号“+”一样。&lt;br /&gt;
&lt;br /&gt;
比如执行下面的SQL语句：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;SQL&amp;quot;&amp;gt;&lt;br /&gt;
SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_Employee WHERE FName IS NOT NULL&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
除了“||”，Oracle还支持使用CONCAT()函数进行字符串拼接，比如执行下面的SQL语句：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;SQL&amp;quot;&amp;gt;&lt;br /&gt;
SELECT CONCAT('工号:',FNumber) FROM T_Employee&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==oracle数据库导出、导入==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
exp xzh/xzh@192.168.0.58/orcl file=xzh.dmp tables=cp_code_type, cp_code, pf_company2, xzh_card, xzh_card_no, xzh_card_no_gen_batch, xzh_card_package, xzh_card_package_dtl, xzh_service, xzh_service_mapping, xzh_supplier, xzh_supplier_org, xzh_supplier_service xzh_users&lt;br /&gt;
imp tom/123@192.168.0.109:49161/xe file=~/xzh.dmp full=y&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;数据导出：&lt;br /&gt;
&lt;br /&gt;
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
exp system/manager@TEST file=d:\daochu.dmp full=y&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2 将数据库中system用户与sys用户的表导出&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
3 将数据库中的表table1 、table2导出&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2) &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
4 将数据库中的表table1中的字段filed1以&amp;quot;00&amp;quot;打头的数据导出&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\&amp;quot; where filed1 like  '00%'\&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
;数据的导入&lt;br /&gt;
&lt;br /&gt;
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
imp system/manager@TEST  file=d:\daochu.dmp&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
上面可能有点问题，因为有的表已经存在，然后它就报错，对该表就不进行导入。在后面加上 ignore=y 就可以了。&lt;br /&gt;
&lt;br /&gt;
2 将d:\daochu.dmp中的表table1 导入&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tom</name></author>	</entry>

	</feed>