1. 程式人生 > >oracle匯出指定幾張表的資料以逗號等為分隔符

oracle匯出指定幾張表的資料以逗號等為分隔符

程式碼示例

#!/bin/bash
#====================Usage:      sh exp.sh 264  Or ./exp.sh 264   import data from records in tables which was inserted in 265 to 264 days before sysdate  ===============#

if (($# == 0));then
 echo '===========you need to  input an integer parameter ============='
 exit 1
fi

echo '===========beginning of exporting data from tables==================='
#prev_date prev_date=`date -d "-$1 day" +%Y-%m-%d` end_day=$1 start_day=$(($1+1)) export ORACLE_HOME=/u01/app/11.2.0/db_home1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib #program path prog_path=/home/oracle/lxm/imp_exp #output file base path output_file_base_path=${prog_path}/file #log path output_log_base_path=${prog_path}
/logs #db link string db_srv="ddjk/[email protected]" arr=(t_sagw_callreleasepush_msg t_smb_sub_msg t_smb_unsub_msg t_sagw_cdrpush_msg) for var in ${arr[@]}; do output_file=${output_file_base_path}/${var}/${var}_${prev_date}".txt" output_log=${output_log_base_path}/${var}/${var}
".log" echo $output_file if [ ! -f $output_file ];then touch $output_file fi echo $output_log if [ ! -f $output_log ];then touch $output_log fi sql="select * from ${var} t where t.time<sysdate-${end_day} and t.time>=sysdate-${start_day}" $prog_path/sqluldr2_linux64_10204.bin user=$db_srv query="$sql" file=$output_file field=0x2c record=0x0a log=$output_log charset=ZHS16GBK txt=unl done echo '===========end of exporting data from tables==================='

匯出工具

相關推薦

oracle匯出指定資料逗號分隔符

程式碼示例 #!/bin/bash #====================Usage: sh exp.sh 264 Or ./exp.sh 264 import data fr

【EXP】匯出資料庫dmp檔案,只有資料,剩下的所有只有結構沒有資料

匯出一個dmp,指定的表中有資料,其他的表只有表結構, 有資料的表只有幾張,分別是A,B,C三張表,剩下的表都沒有資料 思路: 匯出一個111.dmp,所有的表都只是表結構 將111.dmp匯入到新建立的使用者中,使用者為test使用者 將正式資料庫的資料insert到te

MySQL資料庫()的匯入匯出(備份和還原) mysql 根據一資料更新另一

(select * from crawlDocs order by DocCrawlTime desc limit 2000 into outfile '/tmp/weixinData' FIELDS TERMINATED BY ',';) 一般最好是匯出到/tmp目錄下,因為這樣mysql使用者也可以寫入。

Oracle創建用戶,並賦於只讀某的權限

rep pla user 進入 ide itl synonym job tab #進入數據庫 su - oracle sqlplus / as sysdba #創建只讀用戶 create user kms identified by "123@456"; grant con

oracle中建立只讀某許可權的使用者

  create user donghx  identified by donghx  default tablespace CMGIS  temporary tablespace TEMP  profile DEFAULT;  grant connect to donghx

SQL Server大資料匯入匯出:將一資料匯入到另一

         今天下午休息的時候又被扔給一項任務:把全國的街道資料匯入街道表。但是他們扔給我的SQL指令碼是從網上down的一個,跟平臺這邊的資料庫設計的完全不一樣。            

plsql匯出匯入一資料

pl/sql匯出一張表的資料: 在左邊tables目錄下右鍵點選對應的表->export data: 三種匯出資料方式: 1、匯出dmp格式,此方式可以匯出clob欄位。    1)選擇執行的命令exp.exe所在的目錄(右邊重新整理如果報錯找不著命令,就將dbh

Oracle設置某只讀

soft 更新 color 只讀 lte div col -s 方法 Oracle 11g開始支持設置某張表為只讀,這樣可以防範對某些表的修改,起到一定的安全性。 設置如下: --設置表為只讀權限(加鎖) ALTER TABLE tab_name READ ONL

Hive中三資料合併成一行,並插入另一

知識點:時間戳轉化,當前時間,左連線,查詢的欄位相同可以直接插入另一張表  insert into lqioc_ioc_dw.kkjc select a.*,b.CLL,e.JZT from (select FROM_UNIXTIME(UNIX_TIMESTAMP(),'yyyy

oracle】查詢某重建以前的記錄操作(如能找到哪臺機器執行的更好)

oracle查詢某張表重建以前的記錄操作(如能找到哪臺機器執行的更好) 需求: 開發下午反饋測試環境有一張表不知道誰動過導致資料變了,然後他們十一點多的時候把表重建了; 但他們想知道重建表之前誰動過這張表(猜測肯定是覺得資料丟失了給他們帶來了諸多不便才想起來找DBA誰動過這張表),主要是想知

Linq實現sql一資料不存在另外一

Linq中包含查詢 //Linq程式碼: T_WxMaterials.Where(n=>T_VideoMsgs.Select(m=>m.MediaID).Contains(n.MediaID)) //生成的sql語句: SELECT [t0].[ID], [t0].[

mysql查詢哪資料最大

mysql資料庫中information_schema 資料庫儲存了資料庫很多資訊,可以通過查詢tables表來獲得所需要的表相關資訊。 mysql> select table_name,table_rows from  tables order by table_rows

SAP使用者資訊查詢的

(a)如何快速查出某個Role下所有的Tcode?(除了SUIM,能否直接select什麼表)?(b)如何快速查出某個Role下所有的UserID?(除了SUIM,能否直接select什麼表)?(c)如何快速查出某個UserID具有的Role?(除了SUIM,能否直接select什麼表)?(d)如何快速查出某

查詢資料,根據存在情況,插入到另一個

INSERT INTO now_pay_cust_stat (     customer_id,     n_p_custid,     sum_offer_order,     sum_offer_p

excel兩資料匹配資料(VLOOKUP)

最近專案中需要跨專案匯入資料,現整理Excel的一個小技能,記錄如下。   第一步:我們開啟一個excel表,建立資料如下。         第二步:我們把游標定位在需要展示資料的單元格中,如下圖所示。 &n

Mysql 對比兩資料

檢視一個表中的資料是否在另一個表中存在 第一種方案: select * from tb_a A where NOT EXISTS (select 1 from tb_b B wher

mysql 一條sql更新多資料

<update id="deleteActor" parameterType="java.lang.String"> UPDATE actor_tbl a LEFT JOIN video_actor_tbl b ON a.sn = b.actorsn SET a.

Oracle 將另外一的列更新到本的列

_id bsp select oracl sele zid lec sql set Oracle寫法: update temp_agentpay_df q set q.up_batch_bizid=(select c.batch_bizid from temp_df_id

oracle匯出已存在資料庫語句

第一步:安裝pl/sql Developer (此程式Oracle必備軟體,在此不再討論) 第二步:登入pl/sql Developer                                             登入介面 第三步在左側選單選擇Tables

oracle常用命令--更新/修改資料之update命令

更新/修改表資料 update 表名 set 欄位名1='修改後的值', 欄位名2='修改後的值' where id=1 例如: update customer set tel='12132',a