寫個指令碼使用perl或shell對比oracle表資料急艾

2022-02-06 13:31:11 字數 3573 閱讀 5915

1樓:區白翠

當然是同時匯入快了,但是同時匯入會比較耗費資源,你得綜合考慮對生產庫的影響。 不知道你是用sqlldr匯入還是其他工具,如果是sqlldr的話,引數parallel可以控制。

用shell寫個指令碼完成對oracle資料庫的增,刪,改,查

2樓:輕撫樓豬

sqlplus $/$@$ <

通過sqlplus連線資料庫,然後寫通過sql實現增,刪,改,查

三個變數分別是 使用者名稱、密碼、資料庫名稱

3樓:匿名使用者

1、例如查詢

#!/bin/sh

cid=$1

ym=`date +%y%m`

if [[ -z $1 ]];then

echo "usage: $0 cid "

exit 0;

fisqlplus user001/12345678 << eofselect sysdate from test_$ where cid=$;

eof2、select可以替換為delete/insert/update等語句

寫個shell指令碼連線oracle資料庫查詢某表資料匯出為txt檔案,再傳送到第三

4樓:匿名使用者

1、簡單的單列

#!/bin/sh

sqlplus 'user001/12345678'<< eof

set define off

set hea off

spool vip1.txt

select username from account where level=7;

spool off

quit;

eofsed -i 's/[ ]*//g' ~/vip1.txt

sed -i '/^$/d' ~/vip1.txt

sed -i '1d' ~/vip1.txt

sed -i '$d' ~/vip1.txt

scp -p22 ~/vip1.txt [email protected]:/root

2、複雜的多列

#!/bin/sh

cid=$1;

today=`date +%y-%m-%d-%h.%m`

ym=`date +%y%m`

ymd=`date -d -1days +%y%m%d`

last_ym=`date -d last-month +%y%m`

next_ym=`date -d next-month +%y%m`

file=chat_recorder_$_20140707-11.xls

if [[ $1 == '' ]];then

echo "usage: $0 company_id "

exit 0;

fisqlplus 'user002/12345678' << eof

set linesize 200

set term off verify off feedback off pagesize 999

set markup html on entmap on spool on preformat off

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

spool $

select a.*,b.* from recorder_$ a,t_$ b where a.

company_id='$cid' and a.create_time between to_date('2014-07-07 00:00:

00', 'yyyy-mm-dd hh24:mi:ss') and to_date('2014-07-12 00:

00:00', 'yyyy-mm-dd hh24:mi:

ss') and a.chat_id=b.chat_id order by b.

chat_id ;

spool off

quit;

eofsed -i '/select/d' $file

zip -r $.zip $file

scp -p22 $.zip [email protected]:/opt

寫了一個shell指令碼連線oracle資料庫,但是有問題,麻煩幫看下。

5樓:匿名使用者

你前面是eof開始,後面也要eof結束,而不是用!結束

6樓:匿名使用者

把sqlplus nagios/1@trntst<

我想在shell中寫個指令碼實現查詢oracle一個表中的資料,並把查詢到的資料儲存到檔案中,怎麼做?

7樓:杜爺1號

參考如下:

sqlplus -s sys/change_on_install >>/export/home/oracle/query.log <

select count(*) from v$sysstat;

exit;!

你好,我想寫個shell指令碼連線oracle伺服器查詢某表資料並且匯出到txt文字

8樓:

使用shell呼叫sqlplus來執行sql語句,匯出到檔案可以通過spool命令指定檔案,我從自己曾經寫的指令碼擷取一段給你示例吧,如果你熟悉shell編寫的話,很容易改造成自己需要的

引數1-6分別是表名,oracle使用者名稱,oracle密碼,oracle伺服器ip地址,oracle伺服器埠,oracle伺服器的服務名(如果不確定聯絡db管理員)

t_name=$1

userid=$2

passwd=$3

ip=$4

port=$5

servicename=$6

db_link_str=$userid/$passwd@$ip:$port/$servicename

sqlplus -s $db_link_str<

set heading off

set echo off

set feedback off

set termout off

set linesize 1000

set trimspool on

spool temp.out

select column_name||' '||data_type||' '||data_length||' ',data_default from user_tab_columns where table_name='$t_name' order by column_id;

spool off

exit

eofsed -i '/^$/d' temp.out

執行完畢後,就會出現temp.out檔案,裡面是指定表的一些資訊:列名,資料型別,資料長度和預設值,且以空格分隔

linux下編寫以個shell指令碼,實現對oracle資料庫抽取指定條件的資料並且儲存在一個文字檔案中。

誰能幫忙寫個Linux shell指令碼,完成行處理

我用awk來做,one line awk,一條命令完成。awk posix a a n b else a a b print a srcfile desfile 測試通過,結果重定向到desfile檔案中。思路就是 使用getline迴圈獲取下一行 while getline b 判斷下一行是否為標...

求助,如何寫個主lua把這些指令碼串聯起來,從而呼叫另lu

用dofile 函式即可實現你的功能。怎樣在lua指令碼中呼叫另一個lua指令碼中的函式呢?require 函式指令碼檔名字 下面可以直接呼叫,也可以使用pcall方法安全呼叫 除了樓上的回答,還可以這樣,dofile b.lua 然後就可以在a.lua指令碼中呼叫b.lua中的函式了。a.lua中...

lua語言就業問題,lua指令碼語言,現在使用的怎麼樣 前景怎麼樣 公司要用

作為一名應屆大學生你不應該根據語言去找工作 而應該根據工作去定語言lua的話 在微控制器行業有內一定應用容 在遊戲行業應用比較多 我以前就是在遊戲公司用lua語言做伺服器和客戶端指令碼的指令碼程式設計師工資很有限 而且你不知道公司的下一款遊戲會不會用lua所以比較推薦學習c 這類語言 這樣的語言即使...