<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle &#8211; 記下來</title>
	<atom:link href="https://noter.tw/tag/oracle/feed/" rel="self" type="application/rss+xml" />
	<link>https://noter.tw</link>
	<description>一路上踩到的坑、遇到的問題，一點一滴記下來，希望能幫助到需要的人~</description>
	<lastBuildDate>Sat, 20 Jan 2024 10:23:28 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.3</generator>

<image>
	<url>https://noter.tw/wp-content/uploads/cropped-old-1130742_1920-1-32x32.jpg</url>
	<title>Oracle &#8211; 記下來</title>
	<link>https://noter.tw</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Oracle, MySQL 分組編號與全排序編號 row_number, over, partition by</title>
		<link>https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/</link>
					<comments>https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/#respond</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Fri, 17 Nov 2023 04:02:11 +0000</pubDate>
				<category><![CDATA[資料庫]]></category>
		<category><![CDATA[row_number()]]></category>
		<category><![CDATA[partition by]]></category>
		<category><![CDATA[over]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[MySQL 分組編號]]></category>
		<category><![CDATA[mariadb]]></category>
		<category><![CDATA[MySQL 連續編號]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[MariaDB 分組編號]]></category>
		<category><![CDATA[Oracle 編號]]></category>
		<category><![CDATA[Oracle 分組編號]]></category>
		<category><![CDATA[Oracle 序號]]></category>
		<category><![CDATA[Oracle 連續編號]]></category>
		<category><![CDATA[Oracle ROWNUM]]></category>
		<guid isPermaLink="false">https://noter.tw/?p=12015</guid>

					<description><![CDATA[<p>留給自己的一 memo，使用 Oracle 匯出資料的時候常常需要加上分組編號，這邊簡單記錄一下 Oracle 分組編號的使用方法。</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/" data-wpel-link="internal">Oracle, MySQL 分組編號與全排序編號 row_number, over, partition by</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>留給自己的一 memo，使用 Oracle 匯出資料的時候常常需要加上分組編號，這邊簡單記錄一下使用方法。</p>



<span id="more-12015"></span>



<h2 class="wp-block-heading para">使用 ROWNUM 編號 (Oracle)</h2>



<p>首先第一種情況是要從頭到尾做連續編號，如果使用 ROWNUM 做的話，會發現只要加了 ORDER BY，序號不會跟著順序重新編號，例如</p>



<pre class="EnlighterJSRAW" data-enlighter-language="sql" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT rownum, t.* FROM TEST t</pre>



<p>如果只是要簡單編號不考慮資料排序 (order by) 直接使用 ROWNUM 即可(下表左)，若加上排序後如下表右，順序並不會跟著變動。</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center">1</td><td>B000636</td><td>無</td></tr><tr><td class="has-text-align-center" data-align="center">2</td><td>B000637</td><td>無</td></tr><tr><td class="has-text-align-center" data-align="center">3</td><td>F00001</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">4</td><td>F00001</td><td>分類</td></tr><tr><td class="has-text-align-center" data-align="center">5</td><td>F00002</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">6</td><td>F00003</td><td>分類</td></tr></tbody></table><figcaption class="wp-element-caption">使用 ROWNUM 加上編號</figcaption></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center">6</td><td>F00003</td><td>分類</td></tr><tr><td class="has-text-align-center" data-align="center">5</td><td>F00002</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">4</td><td>F00001</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">3</td><td>F00001</td><td>分類</td></tr><tr><td class="has-text-align-center" data-align="center">2</td><td>B000637</td><td>無</td></tr><tr><td class="has-text-align-center" data-align="center">1</td><td>B000636</td><td>無</td></tr></tbody></table><figcaption class="wp-element-caption">加上 ORDER BY 後</figcaption></figure>
</div>
</div>



<h2 class="wp-block-heading para">使用 row_number(), over() 全排序編號</h2>



<p>這種時候借助 row_number() 與 over() 的幫忙就可以完成</p>



<pre class="EnlighterJSRAW" data-enlighter-language="sql" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT row_number() over (order by no desc) seq, t.* FROM TEST t</pre>



<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center">1</td><td>F00003</td><td>分類</td></tr><tr><td class="has-text-align-center" data-align="center">2</td><td>F00002</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">3</td><td>F00001</td><td>原始</td></tr><tr><td class="has-text-align-center" data-align="center">4</td><td>F00001</td><td>分類</td></tr><tr><td class="has-text-align-center" data-align="center">5</td><td>B000637</td><td>無</td></tr><tr><td class="has-text-align-center" data-align="center">6</td><td>B000636</td><td>無</td></tr></tbody></table><figcaption class="wp-element-caption">使用 row_number() over () 後</figcaption></figure>



<h2 class="wp-block-heading para">使用 row_number(), over(partition by) 做 Oracle 分組編號</h2>



<p>還有一種常見的需求是做分組編號，就是遇到同類型的時候，可以標註這是該類型的編號幾，只要在 over 中加入 partition by 要用來當作分組依據的欄位即可</p>



<pre class="EnlighterJSRAW" data-enlighter-language="sql" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">SELECT t.no, row_number() over (partition by t.no order by t.no asc) seq, t.type FROM TEST t</pre>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-table"><table><tbody><tr><td>B000636</td><td>1</td><td>無</td></tr><tr><td>B000637</td><td>1</td><td>無</td></tr><tr><td>F00001</td><td>1</td><td>原始</td></tr><tr><td>F00001</td><td>2</td><td>分類</td></tr><tr><td>F00002</td><td>1</td><td>原始</td></tr><tr><td>F00003</td><td>1</td><td>分類</td></tr></tbody></table><figcaption class="wp-element-caption">加上分組編號</figcaption></figure>



<p>類似需求備忘：<a href="https://tomkuo139.blogspot.com/2011/11/oracle-rownum-rownumber-rank-denserank.html" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external" class="wpel-icon-right">Oracle rownum / row_number / rank / dense_rank 這四個的差異<span class="wpel-icon wpel-image wpel-icon-6"></span></a></p>
</div>
</div>



<p>延伸閱讀：<br><a href="https://noter.tw/12503/mariadb-json_extract-%e5%be%9e-json-%e6%ac%84%e4%bd%8d%e5%8f%96%e5%80%bc/" data-wpel-link="internal">MariaDB JSON_EXTRACT: 從 JSON 欄位取值</a></p>


<h2 class="para">與 Oracle 相關的文章</h2><ul><li><span style="font-size: 1em;"><a href="https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/" data-wpel-link="internal">Oracle, MySQL 分組編號與全排序編號 row_number, over, partition by</a></span></li><li><span style="font-size: 1em;"><a href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a></span></li><li><span style="font-size: 1em;"><a href="https://noter.tw/8540/database/" data-wpel-link="internal">資料庫問題彙整</a></span></li><li><span style="font-size: 1em;"><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></span></li><li><span style="font-size: 1em;"><a href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client &#8211; Oracle SQL Developer 安裝教學</a></span></li><li><span style="font-size: 1em;"><a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a></span></li></ul><p>這篇文章 <a rel="nofollow" href="https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/" data-wpel-link="internal">Oracle, MySQL 分組編號與全排序編號 row_number, over, partition by</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/12015/oracle-%e5%88%86%e7%b5%84%e7%b7%a8%e8%99%9f%e8%88%87%e5%85%a8%e6%8e%92%e5%ba%8f%e7%b7%a8%e8%99%9f-row_number-over-partition-by/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>使用 Oracle sqlplus 將查詢結果匯出到檔案</title>
		<link>https://noter.tw/9109/oracle-sqlplus-export-results-to-file/</link>
					<comments>https://noter.tw/9109/oracle-sqlplus-export-results-to-file/#respond</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Wed, 11 Aug 2021 11:54:28 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[技術相關]]></category>
		<category><![CDATA[資料庫]]></category>
		<category><![CDATA[linesize]]></category>
		<category><![CDATA[另存檔案]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[spool]]></category>
		<category><![CDATA[sqlplus]]></category>
		<category><![CDATA[匯出搜尋結果]]></category>
		<category><![CDATA[匯出檔案]]></category>
		<category><![CDATA[查詢結果]]></category>
		<category><![CDATA[colsep]]></category>
		<guid isPermaLink="false">https://noter.tw/?p=9109</guid>

					<description><![CDATA[<p>小蛙又遇到不能用 GUI 來管理 Oracle 的專案了，其實跟 2012 年的時候遇到的這個是相同的專案（Oracle 使用 sqlplus 匯入 SQL 檔案），該篇記錄了怎麼把一堆要執行的 SQ&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>小蛙又遇到不能用 GUI 來管理 Oracle 的專案了，其實跟 2012 年的時候遇到的這個是相同的專案（<a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" target="_blank" rel="noreferrer noopener" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a>），該篇記錄了怎麼把一堆要執行的 SQL 指令存入檔案中，並於 Oracle sqlplus 載入檔案執行，這篇文章為反向動作，將查詢的結果輸出到檔案內。</p>



<span id="more-9109"></span>



<p>這個專案的環境很麻煩，在一個需要透過 VPN 連進去的內部環境，連上 VPN 之後就 &#8230; 斷網了，完全沒辦法對外，沒辦法 Google 查資料，對小蛙這種不專精的半調子來說存在一定難度，幸好有強大的同仁用 VM 的特殊大絕解決這問題，不過 VM 裡面連上 VPN 還是不能上網，但總算可以在本機 Google 資料，再手動把指令或語法手動輸入進去，對，沒錯，沒辦法複製貼上 Orz &#8230;</p>



<p>囉嗦一堆，進正題</p>



<pre class="wp-block-preformatted withcode">set colsep ,
set headsep off
set pagesize 0
set linesize 10000
set trimspool on
set echo off

spool /home/hans/output

select * from image;

spool off</pre>



<p class="withcode">上面那些指令是參考 <a href="https://stackoverflow.com/" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external" class="wpel-icon-right">StackOverflow<span class="wpel-icon wpel-image wpel-icon-6"></span></a> 多個答案來的，有些實際上在做什麼小蛙也不是很了解，但還是可以猜出大概是什麼，例如：<code>colset</code> 是設定欄位間的分隔符號(其他詳細設定請自行 Google)。小蛙遇到有問題的地方是 <code>linesize</code> 沒有設定，導致匯出的每一行都被切斷在莫名其妙的地方。其他 <code>spool 輸出檔案路徑</code>、<code>select * from image;</code> 要匯出結果的查詢 &#8230; 等等。</p>



<p>這指令已符合小蛙的需求，先備存，之後有其他需求再去查詳細的資料。以下是小蛙自己留存用的</p>



<pre class="wp-block-preformatted withcode">// 相當於 mysql show tables;
select table_name from user_tables;

// 查找排序過的前 10 筆 (Top 10)
select rownum, t.* from ( 實際要運作的 SQL ) t where rownum &lt; 10;

// 列出表格的所有欄位
select * from user_tab_columns A where A.table_name = 'IMAGE';
// 列出名稱、類型及長度
select column_name, data_type, default_length from user_tab_columns A where A.table_name = 'IMAGE';

// 複製 table 內所有資料
create table image_backup as select * from image;

// 表格建立的時間
select object_name, created, TIMESTAMP from user_objects where object_name = 'IMAGE';

// 修改表格
alter table IMAGE modify (file_name varchar2(300), index_term varchar2(1000));

// 格式變動完成
commit;</pre>



<p><strong>Oracle 系列文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/11178/%e4%bf%ae%e6%94%b9-oracle-sequence/" data-wpel-link="internal">修改 Oracle Sequence</a><a href="https://noter.tw/2371/oracle-%e5%8c%af%e5%85%a5-sql-%e6%aa%94%e6%a1%88/" data-wpel-link="internal"></a></li><li><a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a></li><li><a href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a></li><li><a href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client – Oracle SQL Developer 安裝教學</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li></ul>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/9109/oracle-sqlplus-export-results-to-file/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>資料庫問題彙整</title>
		<link>https://noter.tw/8540/database/</link>
					<comments>https://noter.tw/8540/database/#comments</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Fri, 04 Jun 2021 02:29:26 +0000</pubDate>
				<category><![CDATA[資料庫]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[ORA-00932]]></category>
		<category><![CDATA[inconsistent datatypes]]></category>
		<category><![CDATA[CLOB]]></category>
		<category><![CDATA[to_char]]></category>
		<category><![CDATA[java.sql.SQLException]]></category>
		<guid isPermaLink="false">https://noter.tw/?p=8540</guid>

					<description><![CDATA[<p>記錄一些遇到過 DB 相關錯誤訊息。 這些問題都是消耗時間換來的經驗，希望能節省有相同問題的您的時間，現在開始陸續補上 (但也可能偷懶後來就沒更新了 Orz &#8230;) java.sql.SQL&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/8540/database/" data-wpel-link="internal">資料庫問題彙整</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>記錄一些遇到過 DB 相關錯誤訊息。</p>



<span id="more-8540"></span>



<p>這些問題都是消耗時間換來的經驗，希望能節省有相同問題的您的時間，現在開始陸續補上 (但也可能偷懶後來就沒更新了 Orz &#8230;)</p>



<h2 class="para wp-block-heading">java.sql.SQLException: ORA-00932: inconsistent datatypes: expected &#8211; got CLOB</h2>



<p>小蛙收到問題回報，在某個頁面的排序功能上會出現該錯誤，這個問題的解法很簡單，只是用來排序的欄位上出現 CLOB 格式，只要使用 to_char() 把 CLOB 轉成 CHAR 來做排序即可。例如：</p>



<p class="pre left green font-code">// 原始 SQL<br>SELECT * FROM EXHIBITION ORDER BY clob_field DESC<br>// 改成<br>SELECT * FROM EXHIBITION ORDER BY <span class="has-inline-color has-vivid-red-color"><strong>to_char(</strong></span>clob_field<strong><span class="has-inline-color has-vivid-red-color">)</span></strong> DESC</p>



<p>參考資料：<a href="https://blog.xuite.net/akf3dsmax8/wretch/192494934-oracle+sql+distinct+clob" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external" class="wpel-icon-right">來源1<span class="wpel-icon wpel-image wpel-icon-6"></span></a>、<a href="https://stackoverflow.com/questions/12980038/ora-00932-inconsistent-datatypes-expected-got-clob" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external" class="wpel-icon-right">來源2<span class="wpel-icon wpel-image wpel-icon-6"></span></a></p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/8540/database/" data-wpel-link="internal">資料庫問題彙整</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/8540/database/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Oracle 匯入/匯出 Excel (透過 SQL Developer)</title>
		<link>https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/</link>
					<comments>https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/#comments</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Wed, 13 Mar 2013 07:28:51 +0000</pubDate>
				<category><![CDATA[資料庫]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[SQL Developer]]></category>
		<category><![CDATA[xls]]></category>
		<category><![CDATA[匯入]]></category>
		<category><![CDATA[匯出]]></category>
		<guid isPermaLink="false">http://wazai.net/?p=2711</guid>

					<description><![CDATA[<p>昨天碰到一個情況，內容單位希望自己可以有辦法匯入匯出資料庫，不用每次都要透過技術組支援，這件事其實有好有壞，好的是內容單位可以自己處理很多事物，避免時程的耽擱；麻煩的地方在於，如果匯入的時候發生了什麼&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>昨天碰到一個情況，內容單位希望自己可以有辦法匯入匯出資料庫，不用每次都要透過技術組支援，這件事其實有好有壞，好的是內容單位可以自己處理很多事物，避免時程的耽擱；麻煩的地方在於，如果匯入的時候發生了什麼問題，到時候技術組可能會更頭痛，不過既然內容單位有了這樣的要求，小蛙就順手把文件記錄在這！ </p>



<span id="more-2711"></span>



<p>這裡使用的是<strong> Oracle SQL Developer</strong> 官方免費 Client，下載及設定可參考<a rel="noreferrer noopener nofollow external" href="http://wazai.net/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8" target="_blank" data-wpel-link="external" class="wpel-icon-right">這裡<span class="wpel-icon wpel-image wpel-icon-6"></span></a>。直接上圖 + 說明！ </p>



<h2 class="para wp-block-heading"> 【資料匯出成 Excel】 </h2>



<p>開啟 Oracle SQL Developer 後，在要匯出的資料表上點選<strong>滑鼠右鍵</strong>，選擇「<strong>匯出(B)&#8230;</strong>」。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-HguTTGDVrcI/UT_1_qdI1XI/AAAAAAAAHbc/3aD3i-5oaMw/2013-1-30%252520%2525E4%2525B8%25258B%2525E5%25258D%252588%25252003-54-37.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-HguTTGDVrcI/UT_1_qdI1XI/AAAAAAAAHbc/3aD3i-5oaMw/2013-1-30%252520%2525E4%2525B8%25258B%2525E5%25258D%252588%25252003-54-37.png" alt="2013-1-30 下午 03-54-37.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>由於只是要匯出資料，取消勾選「<strong>匯出DDL(E)</strong>」，勾選「<strong>匯出資料(O)</strong>」，格式選擇「<strong>xls</strong>」，選擇存放路徑(這邊要選擇單一檔案，不然會匯出空白的excel)，編碼也要選擇正確，否則會有亂碼的情況。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-jK6XfcHirQw/UT_1_Z5lsxI/AAAAAAAAHbY/v4BWgOX25c4/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-01.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-jK6XfcHirQw/UT_1_Z5lsxI/AAAAAAAAHbY/v4BWgOX25c4/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-01.png" alt="2013-3-13 上午 11-16-01.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>確認要匯出的資料，下方還可以設定只匯出某個條件下(where)成立的資料。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-GcoKKcPIAD8/UT_1_bitSuI/AAAAAAAAHaE/KI_Qq1Bb0_w/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-10.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-GcoKKcPIAD8/UT_1_bitSuI/AAAAAAAAHaE/KI_Qq1Bb0_w/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-10.png" alt="2013-3-13 上午 11-16-10.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>完整匯出資訊。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-tn2TMtRmHKg/UT_1_7AwgXI/AAAAAAAAHbg/zUuuHfKbWiM/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-21.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-tn2TMtRmHKg/UT_1_7AwgXI/AAAAAAAAHbg/zUuuHfKbWiM/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-21.png" alt="2013-3-13 上午 11-16-21.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>點選完成後，開始匯出動作。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-T0OVujOCg9Q/UT_1_x6PaeI/AAAAAAAAHaU/g_Ar42fF_kg/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-30.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-T0OVujOCg9Q/UT_1_x6PaeI/AAAAAAAAHaU/g_Ar42fF_kg/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-16-30.png" alt="2013-3-13 上午 11-16-30.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>匯出完成可以到剛剛指定的路徑，看到剛剛匯出的 Excel。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-uf9QNqY_8VA/UT_8eGvR4xI/AAAAAAAAHec/I84H4qzW5jA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-37-31.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-uf9QNqY_8VA/UT_8eGvR4xI/AAAAAAAAHec/I84H4qzW5jA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-37-31.png" alt="2013-3-13 上午 11-37-31.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<h2 class="para wp-block-heading"> 【從 Excel 匯入資料】</h2>



<p>匯入的部份也同樣簡單，在要匯入的資料表中點選「<strong>匯入資料</strong>」，也可以直接選擇匯入資料後再選擇要匯入的資料表，小蛙在這邊建了一個TEST資料表以供匯入測試。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-8BSdGFYLW0Q/UT_2AIjeNhI/AAAAAAAAHbk/Zay4VegSq6Y/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-21-43.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-8BSdGFYLW0Q/UT_2AIjeNhI/AAAAAAAAHbk/Zay4VegSq6Y/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-21-43.png" alt="2013-3-13 上午 11-21-43.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>選擇要匯入的 Excel 檔案。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-mJxSdQYchIE/UT_2AevGXHI/AAAAAAAAHao/Now6FPgJU0g/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-11.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-mJxSdQYchIE/UT_2AevGXHI/AAAAAAAAHao/Now6FPgJU0g/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-11.png" alt="2013-3-13 上午 11-22-11.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>預覽要匯入的資料，看看從 excel 載入的資料正不正確，有沒有亂碼 &#8230; 等。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-U8UJOfcoU3U/UT_2AlsbddI/AAAAAAAAHak/NdvfF_OnXdM/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-20.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-U8UJOfcoU3U/UT_2AlsbddI/AAAAAAAAHak/NdvfF_OnXdM/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-20.png" alt="2013-3-13 上午 11-22-20.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>匯入方法選擇「<strong>插入</strong>」 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-tZZwL9XXCCU/UT_2AoUj9nI/AAAAAAAAHa0/qFdut9ZsdwY/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-26.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-tZZwL9XXCCU/UT_2AoUj9nI/AAAAAAAAHa0/qFdut9ZsdwY/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-26.png" alt="2013-3-13 上午 11-22-26.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>這邊預設應該會全部先幫使用者選好，如果沒有的話，也可以自己選擇哪些欄位是要匯入的。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-_N2FLunOZu4/UT_8dcjQ3sI/AAAAAAAAHeY/4V-be3FFbyA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-31.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-_N2FLunOZu4/UT_8dcjQ3sI/AAAAAAAAHeY/4V-be3FFbyA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-31.png" alt="2013-3-13 上午 11-22-31.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>選擇欄位對應，如果這邊匯入跟匯出都有勾選表頭的話，會自動使用表頭的欄位名稱來進行對應，否則要自己一一核對。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh4.ggpht.com/-f9RK0FgfAf4/UT_2BKTM8eI/AAAAAAAAHa8/v9YBoomkhoo/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-39.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh4.ggpht.com/-f9RK0FgfAf4/UT_2BKTM8eI/AAAAAAAAHa8/v9YBoomkhoo/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-39.png" alt="2013-3-13 上午 11-22-39.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>真正匯入資料之前，可以點選「驗證」來看看這次的匯入匯不會有問題，如下圖提示在日期欄位發生錯誤。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-hAiR24E6EwM/UT_8d957MKI/AAAAAAAAHc4/mk6mQDY7H7k/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-58.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-hAiR24E6EwM/UT_8d957MKI/AAAAAAAAHc4/mk6mQDY7H7k/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-22-58.png" alt="2013-3-13 上午 11-22-58.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>確認無誤，點選完成後開始匯入。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh4.ggpht.com/-KaMdXlCA-fQ/UT_2BpZWXZI/AAAAAAAAHbM/RL7DimoDyDA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-32-05.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh4.ggpht.com/-KaMdXlCA-fQ/UT_2BpZWXZI/AAAAAAAAHbM/RL7DimoDyDA/2013-3-13%252520%2525E4%2525B8%25258A%2525E5%25258D%252588%25252011-32-05.png" alt="2013-3-13 上午 11-32-05.png" title="Oracle 匯入/匯出 Excel (透過 SQL Developer)"></a></figure></div>


<p>打完收工！ </p>



<p><strong>Oracle 系列文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/11178/%e4%bf%ae%e6%94%b9-oracle-sequence/" data-wpel-link="internal">修改 Oracle Sequence</a><a href="https://noter.tw/2371/oracle-%e5%8c%af%e5%85%a5-sql-%e6%aa%94%e6%a1%88/" data-wpel-link="internal"></a></li><li><a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a></li><li><a href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a></li><li><a href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client – Oracle SQL Developer 安裝教學</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li></ul>



<p><strong>Excel 相關文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/9117/excel-filter-and-validation/" data-wpel-link="internal">加入篩選器及下拉選單 (資料驗證)</a></li><li><a href="https://noter.tw/9063/excel-auto-search-and-fill-data-by-vlookup-index-match/" data-wpel-link="internal">搜尋表格 填入資料 強大的 VLOOKUP, INDEX, MATCH</a></li><li><a href="https://noter.tw/9061/split-a-excel-to-files/" data-wpel-link="internal">分拆 Excel 成多個檔案 ( Split A Excel to Files)</a></li><li><a href="https://noter.tw/6550/excel-%e4%bd%bf%e7%94%a8-poi-%e8%ae%80%e5%8f%96%e6%96%87%e5%ad%97%e6%a0%bc%e5%bc%8f%e6%97%a5%e6%9c%9f%e5%8d%bb%e8%ae%8a%e6%88%90%e6%95%b8%e5%ad%97%e7%9a%84%e5%95%8f%e9%a1%8c/" data-wpel-link="internal">Excel 使用 POI 讀取文字格式日期卻變成數字的問題</a></li><li><a href="https://noter.tw/4300/java-%e8%ae%80%e5%8f%96-excel-%e6%96%87%e4%bb%b6xls-xlsx-%e4%bd%bf%e7%94%a8-apache-poi/" data-wpel-link="internal">Java 讀取 Excel 文件(xls, xlsx) – 使用 Apache POI</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li><li><a href="https://noter.tw/1732/jsp%e5%b0%87%e8%b3%87%e6%96%99%e5%8c%af%e5%87%ba%e6%88%90excel%e7%9b%b4%e6%8e%a5%e4%b8%8b%e8%bc%89-by-jexcelapi-jxl/" data-wpel-link="internal">JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)</a></li><li><a href="https://noter.tw/1569/java-excel-jxl/" data-wpel-link="internal">Java + Excel = JXL</a></li><li><a href="https://noter.tw/119/ncr-%e8%99%95%e7%90%86%e6%96%b9%e5%bc%8f%ef%bc%9ajava-vba/" data-wpel-link="internal">NCR &amp;#xxxxx; 處理方式：Java &amp; VBA</a></li></ul>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>官方 Client &#8211; Oracle SQL Developer 安裝教學</title>
		<link>https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/</link>
					<comments>https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/#respond</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Wed, 13 Mar 2013 07:04:03 +0000</pubDate>
				<category><![CDATA[資料庫]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[SQL Developer]]></category>
		<category><![CDATA[database]]></category>
		<guid isPermaLink="false">http://wazai.net/?p=2714</guid>

					<description><![CDATA[<p>之前大多使用 PL/SQL Dev 這套軟體，有些單位並沒有這套付費軟體，而且 Oracle 官方出的 Oracle SQL Developer 就已經很好用了，該有的功能都有，重點是免費的！這篇文章&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client &#8211; Oracle SQL Developer 安裝教學</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>之前大多使用 PL/SQL Dev 這套軟體，有些單位並沒有這套付費軟體，而且 Oracle 官方出的 Oracle SQL Developer 就已經很好用了，該有的功能都有，重點是免費的！這篇文章介紹怎麼安裝跟設定 Oracle SQL Developer。 </p>



<span id="more-2714"></span>



<p>下載&nbsp;Oracle SQL Developer (<a rel="noreferrer noopener nofollow external" aria-label="http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html (在新分頁中開啟)" href="http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html" target="_blank" data-wpel-link="external" class="wpel-icon-right">http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html<span class="wpel-icon wpel-image wpel-icon-6"></span></a>)</p>



<h2 class="para wp-block-heading"><strong>電腦裡已安裝 JDK</strong></h2>



<p><a rel="noreferrer noopener nofollow external" href="http://download.oracle.com/otn/java/sqldeveloper/sqldeveloper-3.1.07.42-no-jre.zip" target="_blank" data-wpel-link="external" class="wpel-icon-right"><strong>Oracle SQL Developer for 32-bit Windows</strong><span class="wpel-icon wpel-image wpel-icon-6"></span></a>&nbsp;(This zip&nbsp;<em>does not</em>&nbsp;include a JDK)<br>To install and run:<br>&#8211; Ensure you have a JDK installed, if not, download&nbsp;<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external" class="wpel-icon-right">here<span class="wpel-icon wpel-image wpel-icon-6"></span></a><br>(click the Download for JDK 6 Update &lt;xx&gt;, where &lt;xx&gt; is the latest update)<br>&#8211; Download the file above<br>&#8211; Extract sqldeveloper.zip into any folder, using folder names<br>&#8211; Within that folder, open the sqldeveloper folder<br>&#8211; Double-click sqldeveloper.exe</p>



<h2 class="para wp-block-heading"><strong>未安裝 JDK</strong></h2>



<p><a href="http://download.oracle.com/otn/java/sqldeveloper/sqldeveloper-3.1.07.42.zip" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external" class="wpel-icon-right"><strong>Oracle SQL Developer for 32-bit Windows</strong><span class="wpel-icon wpel-image wpel-icon-6"></span></a>&nbsp;(This zip file&nbsp;<em>includes</em>&nbsp;the JDK1.6.0_11)<br>To install and run:<br>&#8211; Download the file above<br>&#8211; Extract sqldeveloper.zip into any folder, using folder names<br>&#8211; Within that folder, open the sqldeveloper folder<br>&#8211; Double-click sqldeveloper.exe

</p>



<p>解壓縮 Oracle SQL Developer 後執行 <strong>sqldeveloper.exe</strong>。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-70Si7Tf2lyI/UT_8eUENwaI/AAAAAAAAHdI/tu6-7n-tA_o/clip_image002.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-70Si7Tf2lyI/UT_8eUENwaI/AAAAAAAAHdI/tu6-7n-tA_o/clip_image002.jpg" alt="clip_image002.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>如果剛剛下載的是第一個的話(不包含JDK)，第一次執行會要求指定JDK的位置(一定要選JDK的，選JRE的會有問題)，點選Browse…會跳出視窗供選取位置(下下圖)。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-bsB70mmb6xs/UT_8eaGe4-I/AAAAAAAAHdE/xuuCJ1ytyRI/clip_image003.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-bsB70mmb6xs/UT_8eaGe4-I/AAAAAAAAHdE/xuuCJ1ytyRI/clip_image003.jpg" alt="clip_image003.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>

<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-r9Tv5yWfxE4/UT_8ekrXleI/AAAAAAAAHdY/oK8areaPaJM/clip_image004.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-r9Tv5yWfxE4/UT_8ekrXleI/AAAAAAAAHdY/oK8areaPaJM/clip_image004.jpg" alt="clip_image004.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>完成後會開啟軟體，這以下畫面直接點選<strong>確定</strong>即可。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh5.ggpht.com/-uJ6rcJccp4M/UT_8e4--EYI/AAAAAAAAHes/oJgsSBDmdB4/clip_image005.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh5.ggpht.com/-uJ6rcJccp4M/UT_8e4--EYI/AAAAAAAAHes/oJgsSBDmdB4/clip_image005.jpg" alt="clip_image005.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>點選連線下方的「<strong>+</strong>」後，選擇「<strong>資料庫連線</strong>」。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-3i5s_Ia_jnk/UT_8e8Kw9HI/AAAAAAAAHek/0Bx0TL35ixc/clip_image006.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-3i5s_Ia_jnk/UT_8e8Kw9HI/AAAAAAAAHek/0Bx0TL35ixc/clip_image006.jpg" alt="clip_image006.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>輸入資訊，點選「<strong>測試</strong>」，左下角出現「成功」字樣。<strong>儲存</strong>後點選<strong>連線</strong>。<br>IP: 輸入您的資料庫位址<br>SID: 輸入您的資料庫 SID<br>username : 資料庫帳戶<br>password : 資料庫密碼 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-lv2t66fJaQ4/UT_8fYYKjyI/AAAAAAAAHd0/GPvhbO9PpwA/clip_image007.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-lv2t66fJaQ4/UT_8fYYKjyI/AAAAAAAAHd0/GPvhbO9PpwA/clip_image007.jpg" alt="clip_image007.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>管理介面如下圖：點選左邊的「<strong>表格</strong>」-&gt;右邊的「<strong>資料</strong>」頁籤，可以看到該表格所有資料。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh4.ggpht.com/-B9oWs0EuxRo/UT_8fpfSCdI/AAAAAAAAHeE/HekCfN6_JTA/clip_image008.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh4.ggpht.com/-B9oWs0EuxRo/UT_8fpfSCdI/AAAAAAAAHeE/HekCfN6_JTA/clip_image008.jpg" alt="clip_image008.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>可以直接在<strong>篩選條件</strong>輸入需要的條件。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-FxplXsmZtl8/UT_8frF8N9I/AAAAAAAAHd4/qvL7UKzKnBk/clip_image009.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-FxplXsmZtl8/UT_8frF8N9I/AAAAAAAAHd4/qvL7UKzKnBk/clip_image009.jpg" alt="clip_image009.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>在左方資料庫上點選<strong>右鍵</strong>，選擇「<strong>開啟SQL工作表</strong>」，可開啟手動輸入SQL功能。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh3.ggpht.com/-E9EXSLtAPHw/UT_8gG63Z6I/AAAAAAAAHds/d-pQt4zMcJg/clip_image010.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh3.ggpht.com/-E9EXSLtAPHw/UT_8gG63Z6I/AAAAAAAAHds/d-pQt4zMcJg/clip_image010.jpg" alt="clip_image010.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>自行輸入SQL畫面。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-RavLI2g4dSE/UT_8gpdYbaI/AAAAAAAAHd8/NCVNaKPX_K8/clip_image011.jpg" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-RavLI2g4dSE/UT_8gpdYbaI/AAAAAAAAHd8/NCVNaKPX_K8/clip_image011.jpg" alt="clip_image011.jpg" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<p>如果在執行的時候出現了下圖的錯誤，請參考<a rel="noreferrer noopener nofollow external" href="http://sharedderrick.blogspot.tw/2012/01/sql-developer-windows-server-2008-r2.html" target="_blank" data-wpel-link="external" class="wpel-icon-right">這裡<span class="wpel-icon wpel-image wpel-icon-6"></span></a>。 </p>


<div class="wp-block-image">
<figure class="aligncenter"><a href="http://lh6.ggpht.com/-24RofihoS4o/UUAkB9fmulI/AAAAAAAAHe8/lw4zo9oNlpg/aa.png" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><img decoding="async" src="//lh6.ggpht.com/-24RofihoS4o/UUAkB9fmulI/AAAAAAAAHe8/lw4zo9oNlpg/aa.png" alt="aa.png" title="官方 Client - Oracle SQL Developer 安裝教學"></a></figure></div>


<h2 class="para wp-block-heading">參考資料 </h2>



<ol class="my-li bg-darkblue wp-block-list"><li><a href="http://sharedderrick.blogspot.tw/2012/01/sql-developer-windows-server-2008-r2.html" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external" class="wpel-icon-right">德瑞克：SQL Server 學習筆記 @ 影片：下載、安裝與組態 SQL Developer，以 Windows Server 2008 R2 + Oracle 11g R2為例<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li><li><a href="http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external" class="wpel-icon-right">Oracle SQL Developer @ Oracle<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li></ol>



<p><strong>Oracle 系列文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/11178/%e4%bf%ae%e6%94%b9-oracle-sequence/" data-wpel-link="internal">修改 Oracle Sequence</a><a href="https://noter.tw/2371/oracle-%e5%8c%af%e5%85%a5-sql-%e6%aa%94%e6%a1%88/" data-wpel-link="internal"></a></li><li><a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a></li><li><a href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a></li><li><a href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client – Oracle SQL Developer 安裝教學</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li></ul>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client &#8211; Oracle SQL Developer 安裝教學</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Oracle 使用 sqlplus 匯入 SQL 檔案</title>
		<link>https://noter.tw/2371/oracle-sqlplus-import-sql-file/</link>
					<comments>https://noter.tw/2371/oracle-sqlplus-import-sql-file/#respond</comments>
		
		<dc:creator><![CDATA[黃小蛙]]></dc:creator>
		<pubDate>Tue, 16 Oct 2012 12:30:50 +0000</pubDate>
				<category><![CDATA[資料庫]]></category>
		<category><![CDATA[spool]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[start file]]></category>
		<category><![CDATA[@]]></category>
		<category><![CDATA[Oracle]]></category>
		<guid isPermaLink="false">http://wazai.net/?p=2371</guid>

					<description><![CDATA[<p>小蛙上星期遇到一個棘手的問題，也才知道原來 Oracle 沒有了 GUI 介面之後是那麼樣的難操作 &#8230; 這篇文章紀錄一下關於如何把資料透過 Oracle start file (@ fil&#46;&#46;&#46;</p>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></description>
										<content:encoded><![CDATA[
<p>小蛙上星期遇到一個棘手的問題，也才知道原來 Oracle 沒有了 GUI 介面之後是那麼樣的難操作 &#8230; 這篇文章紀錄一下關於如何把資料透過 <strong>Oracle start file (@ file)</strong> 的方式匯入沒有 GUI 介面的 Oracle。 </p>



<span id="more-2371"></span>



<p>聽起來好像不是什麼很大的問題，對大部分的資料庫老手來說，但對小蛙真的是個大問題，一直以來都是透過 GUI 操作 Oracle，真正遇到文字介面的時候還慌了一大下，問題是這樣的，某個 Tomcat + Oracle 的環境下，Tomcat 跟 Oracle 各為兩台不同機器，Tomcat 有對外 IP，而 Oracle 只能透過 Tomcat SSH (虛擬IP) 進去操作，由於環境內部幾乎所有 port 都被擋掉，連請同事打 tunnel 都沒辦法的情況下，只好使出將要匯入的資料先整理成 sql 檔案再匯入。 </p>



<p>原本使用 PL/SQL 的 Export data 匯出 SQL Inserts，卻出現 </p>



<pre class="wp-block-preformatted wp-block-syntaxhighlighter-code">Table xxx contains one or more CLOB columns.
Cannot export in SQL format, user PL/SQL Developer format instead.</pre>



<p>如果使用 Oracle Export 會沒辦法達成小蛙要的需求(兩邊資料庫是不同的，加上還要額外另外匯入 Excel 的資料)，只好乖乖寫程式把要匯入的資料整理成 SQL Inserts format。怎麼把資料或 Excel 匯出成 SQL format 就不贅述了，有幾點要注意： </p>



<ul class="my-li bg-darkblue wp-block-list"><li>原本程式裡的 <strong>PreparedStatement</strong> 要全部寫成 <strong>Statement</strong>。</li><li>從 Excel 撈出的資料要檢查其正確性(單雙引號等特殊字元)。</li><li>JXL 對於 Date Format 的 Cell 撈出來後會有問題(這個在另一篇詳述)。 </li></ul>



<p>資料全部匯出之後，在 Oracle 機器下進入<strong> sqlplus</strong>，首先小蛙第一次忘了把結果紀錄下來(spool filename)，到最後根本不知道哪些有問題哪些沒問題，只好乖乖的把資料刪掉重匯(好死不死竟然輸入了commit;)，這該死的資料庫，一個主表帶著一堆子表，並擁有 FK 關係，更令人噴飯的是通通沒有設定 <strong>on delete cascade</strong> &#8230; 只好，先一個一個子表清光光後，再清主表(這邊其實可以把既有的 FK 刪除，再新增有 on delete cascade 屬性的 FK，而且很怪的是 PL/SQL 可以使用 <strong>delete from table cascade</strong> 的語法，而在 Oracle sqlplus 中小蛙輸入卻發生錯誤)，好，清完之後第二次謹慎點！ </p>



<pre class="wp-block-preformatted wp-block-syntaxhighlighter-code">SQL&gt; spool import_result.log
SQL&gt; @ import_file_name.sql
新增一筆資料
新增一筆資料
...
...
新增一筆資料
SQL&gt; commit;
SQL&gt; spool off</pre>



<p>終於，大功告成。如果有更好的做法，還請各位高手不吝留言給小蛙，感恩萬分！ </p>



<h2 class="para wp-block-heading">參考資料</h2>



<ol class="my-li bg-darkblue wp-block-list"><li><a href="http://hsinichi.pixnet.net/blog/post/5321280" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external" class="wpel-icon-right">Oracle Database &#8211; SQLPLUS常用指令 @&nbsp;資訊理想化的延伸<span class="wpel-icon wpel-image wpel-icon-6"></span></a></li></ol>



<p><strong>Oracle 系列文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/11178/%e4%bf%ae%e6%94%b9-oracle-sequence/" data-wpel-link="internal">修改 Oracle Sequence</a><a href="https://noter.tw/2371/oracle-%e5%8c%af%e5%85%a5-sql-%e6%aa%94%e6%a1%88/" data-wpel-link="internal"></a></li><li><a href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a></li><li><a href="https://noter.tw/9109/oracle-sqlplus-export-results-to-file/" data-wpel-link="internal">使用 Oracle sqlplus 將查詢結果匯出到檔案</a></li><li><a href="https://noter.tw/2714/%e5%ae%98%e6%96%b9-client-oracle-sql-developer-%e5%ae%89%e8%a3%9d%e6%95%99%e5%ad%b8/" data-wpel-link="internal">官方 Client – Oracle SQL Developer 安裝教學</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li></ul>



<p><strong>Excel 相關文章：</strong></p>



<ul class="my-li bg-darkblue wp-block-list"><li><a href="https://noter.tw/9117/excel-filter-and-validation/" data-wpel-link="internal">加入篩選器及下拉選單 (資料驗證)</a></li><li><a href="https://noter.tw/9063/excel-auto-search-and-fill-data-by-vlookup-index-match/" data-wpel-link="internal">搜尋表格 填入資料 強大的 VLOOKUP, INDEX, MATCH</a></li><li><a href="https://noter.tw/9061/split-a-excel-to-files/" data-wpel-link="internal">分拆 Excel 成多個檔案 ( Split A Excel to Files)</a></li><li><a href="https://noter.tw/6550/excel-%e4%bd%bf%e7%94%a8-poi-%e8%ae%80%e5%8f%96%e6%96%87%e5%ad%97%e6%a0%bc%e5%bc%8f%e6%97%a5%e6%9c%9f%e5%8d%bb%e8%ae%8a%e6%88%90%e6%95%b8%e5%ad%97%e7%9a%84%e5%95%8f%e9%a1%8c/" data-wpel-link="internal">Excel 使用 POI 讀取文字格式日期卻變成數字的問題</a></li><li><a href="https://noter.tw/4300/java-%e8%ae%80%e5%8f%96-excel-%e6%96%87%e4%bb%b6xls-xlsx-%e4%bd%bf%e7%94%a8-apache-poi/" data-wpel-link="internal">Java 讀取 Excel 文件(xls, xlsx) – 使用 Apache POI</a></li><li><a href="https://noter.tw/2711/oracle-%e5%8c%af%e5%85%a5%e5%8c%af%e5%87%ba-excel-%e9%80%8f%e9%81%8e-sql-developer/" data-wpel-link="internal">Oracle 匯入/匯出 Excel (透過 SQL Developer)</a></li><li><a href="https://noter.tw/1732/jsp%e5%b0%87%e8%b3%87%e6%96%99%e5%8c%af%e5%87%ba%e6%88%90excel%e7%9b%b4%e6%8e%a5%e4%b8%8b%e8%bc%89-by-jexcelapi-jxl/" data-wpel-link="internal">JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)</a></li><li><a href="https://noter.tw/1569/java-excel-jxl/" data-wpel-link="internal">Java + Excel = JXL</a></li><li><a href="https://noter.tw/119/ncr-%e8%99%95%e7%90%86%e6%96%b9%e5%bc%8f%ef%bc%9ajava-vba/" data-wpel-link="internal">NCR &amp;#xxxxx; 處理方式：Java &amp; VBA</a></li></ul>
<p>這篇文章 <a rel="nofollow" href="https://noter.tw/2371/oracle-sqlplus-import-sql-file/" data-wpel-link="internal">Oracle 使用 sqlplus 匯入 SQL 檔案</a> 最早出現於 <a rel="nofollow" href="https://noter.tw" data-wpel-link="internal">記下來</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://noter.tw/2371/oracle-sqlplus-import-sql-file/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
