當前位置:首頁 » 編程軟體 » 腳本連接oracle資料庫

腳本連接oracle資料庫

發布時間: 2022-12-06 18:11:56

① 如何利用腳本文件來管理Oracle資料庫

第一步:創建腳本文件。
在Oracle資料庫重,創建腳本文件的方式很多。如可以直接在記事本中創建腳本文件,也可以通過sql*Plus工具直接創建。不過,筆者的意見是,在SQL*Plus中直接創建腳本文件的話,比較麻煩。這主要是因為在SQL*Plus工具中,命令編輯能力非常有效。如不能夠使用鍵盤上的箭頭鍵定位輸入的位置,不能夠使用DEL鍵刪除輸入的內容等等。而且閱讀起來也比較困難。
第二步:編輯腳本文件。
在我們使用腳本文件的時候,往往需要根據實際情況,對其進行稍微的調整。對腳本文件進行編輯,也有兩種方式。一是通過SQL*Plus工具,二是第三方獨立的腳本編輯軟體。
對於一些調整不大的腳本文件,我們可以直接利用SQL*Plus工具打開,然後進行編輯。但是,對於需要進行大量修改的腳本文件,則筆者建議資料庫管理員採用第三方獨立的腳本編輯軟體。原因很簡單,就如同上面所說的那樣,SQL*Plus工具腳本命令編輯功能非常的薄弱。若採用這個工具對現成的腳本語句進行編輯的話,則可能工作量還是重新編寫一個來的輕。所以,資料庫管理員要根據實際的情況,選擇合適的腳本編輯工具。
另外,在編輯的過程中,要注意語法的正確性。特別是要注意,不能夠改變其固有的格式。如不要不小心刪除了最後的「/」符號結束。
第三步:運行腳本文件。
腳本建立好之後,如何運行腳本呢?在Oracle系統中也提供了許多方式。資料庫管理員可以根據自己的使用習慣來進行選擇。
一是通過Start語句來調用腳本文件。其語法是Start Filemame[相關參數]。在運行這個命令的時候,需要注意幾個問題。
1、腳本文件的擴展名問題。上面在建立腳本文件的時候,筆者就跳掉過,為了在SQL*Plus等工具中可以直接調用這個腳本文件,最好能夠把擴展名改為Oracle資料庫能夠接受的擴展名。默認情況下,擴展名設置為SQL即可。
2、腳本文件的路徑問題。若用戶在利用Start調用腳本文件的時候,若沒有清楚的指名保存路徑的話,則SQL*Plus工具會現在當前的目錄中進行查找;若沒有的話,則會根據環境變數中確定的目錄中進行查找。而一般情況下,我們把腳本文件都會獨立存放。所以,在使用Start命令執行腳本文件的時候,最好能夠註明腳本文件的絕對路徑名。防止語句執行錯誤。
另外@命令也可以起到跟Start命令一樣的作用。只不過,前者的使用范圍更廣一點。@命令可以脫離SQL*PLUS工具而使用。如可以直接在微軟操作系統中的命令行方式下使用。當然,這操作系統要事先部署了Oracle資料庫環境。
二是可以直接利用SQL*Plus工具打開文本文件,執行腳本語句。然後點擊「文件」、「執行」命令執行這個腳本語句。這種方式的好處就是,系統會主動提示用戶需要輸入的參數。

總之,腳本文件是我們管理Oracle資料庫的一大利器。我們好好利用腳本文件,可以提高Oracle資料庫的管理效率。畢竟,每次在需要的時候,都去編寫命令是一件很麻煩的事情。而腳本文件的最大好處,就是可以提高語句的重復利用,節省我們編寫語句、調試測試的時間。

② 怎樣把腳本導入oracle資料庫

start/@ D:\腳本文件
執行腳本文件
edit D:\ 腳本
編輯腳本文件
spool D:\腳本
建立腳本文件 執行SQL語句 spool off 截取SQL查詢結果

③ VBS腳本連接Oracle資料庫明碼問題

host-only連接方式。問題補充:可能我說的不太明白,多包涵了,但是請想好首先在你的主機Windows操作系統下安裝Oracle的客戶端,然後打開客戶端,將資料庫

④ 如何連接Oracle資料庫6:QTP腳本示例

--1 右鍵表所在的資料庫名--2 選擇任務--3 選擇生成腳本--4 選擇設置腳本編寫選項--5 保存到文件--高級--倒數第二行要編寫腳本的數據的類型--選擇架構和數據--6 保存

⑤ 怎麼把sql腳本本件導入到Oracle資料庫里

現在一般使用 sqldeveloper,打開後,連接上DB,再打開.sql文件、運行就是

舊的sqlplus,就是

sqlplus user/pwd@db
sql>@new.sql

⑥ 寫個shell腳本連接oracle資料庫查詢某表數據導出為txt文件,再發送到第三

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;
EOF
sed -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_${cid}_20140707-11.xls

if [[ $1 == '' ]];then
echo "Usage: $0 company_id "
exit 0;
fi
sqlplus '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 ${file}
select a.*,b.* from recorder_${ym} a,t_${ym} 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;
EOF
sed -i '/select/d' $file
zip -r ${file}.zip $file
scp -P22 ${file}.zip [email protected]:/opt

⑦ 如何用cmd命令連接oracle資料庫

1,非集群下 Windows環境下資料庫

conn scott/[email protected]:1521/orcl

conn scott/123456@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =

(PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =

(SERVER = DEDICATED)(SERVICE_NAME = orcl)))

Linux環境下資料庫

conn scott/123@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST

= 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME =

orcl)))

2,集群下連接

conn scott/123@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE = yes)(FAILOVER = on)

(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(ADDRESS=

(PROTOCOL=TCP)(HOST=127.0.0.2)(PORT=1521)))(CONNECT_DATA=(SERVER=default)

(SERVICE_NAME=orcl)))

(7)腳本連接oracle資料庫擴展閱讀

在命令行中登錄oracle資料庫:

sqlplus username/password 如:普通用戶登錄 sqlplus scott/tiger

sqlplus username/password as sysdba 如:sqlplus sys/admin as sysdba

sqlplus username/password@net_service_name 如: sqlplus scott/tiger@orcl

sqlplus username/password@//host:port/sid

⑧ shell腳本中實現對oralce資料庫的操作

試一下,我沒環境,不能幫你測試,有問題聯系
在表名的文件中,增加表結構說明,格式如下:
field1,field2,field3,.....,fieldn
load_data()
{
TABNAME=$1
DATAFILE=$2
crt_ctlfile $TABNAME $DATAFILE
sqlldr $username/$password control=loader.ctl
if [ $? -ne 0 ]
then
echo "error load $TABNAME!"
exit -1
fi
}

crt_ctlfile()
{
echo "load data" > loader.ctl
echo "infile '$2'" >> loader.ctl
echo "into table $1" >> loader.ctl
echo "fields terminated by \"|\" optionally enclosed by '\"'" >> loader.ctl
echo "(" >> loader.ctl
cat tablelist/$1 >> loader.ctl
echo ")" >> loader.ctl
}

if [ $# -ne 2 ]
then
echo "usage: $0 username password"
exit
fi
username=$1
password=$2

tabname=`ls tablelist`

for tab in $tabname
do
if [ -z tablelist/$tab ]
then
echo "file : $tab is null, you need to add table field!"
else
datafile=$tab.unl
if [ -s ./data/$datafile ]
then
load_data $tab $datafile
else
echo "file : $datafile is null or not exists"
fi
fi
done

⑨ 怎麼樣用shell做一個連接oracle資料庫的腳本

shell中直接調用sqlplus即可
sqlplus -s 用戶名/口令@實例名<<EOF

⑩ 怎樣將SQL腳本導入oracle資料庫中

將資料庫的SQL腳本文件導入到oracle中
#1. 首先以管理員的身份登錄到oracle系統中
cmd;
sqlplus sys/sys as sysdba;
#2.創建用戶test,密碼為test
create user test identified by test;
#3.創建表空間,在D盤下建立50m的表空間data_dbfcreate tablespace ts_tablespace datefile 'D:\data_dbf' size 50m;#4.為用戶分配表空間
alter user test default tablespace ts_tablespace to test;#5.給用戶授權
grant create session, create table, create view, unlimited tablespace to test;#6.以test/test登錄
conn test/test;
#7.導入SQL語句,導入創建好的表
@D:\test.sql
#8.查詢表結構

熱點內容
2021款es升級了哪些配置 發布:2024-03-28 21:26:44 瀏覽:384
下述調度演算法 發布:2024-03-28 21:22:24 瀏覽:616
捷達哪個配置裝有esp 發布:2024-03-28 21:17:41 瀏覽:196
天氣源碼 發布:2024-03-28 21:14:11 瀏覽:428
使命召喚紅魔浪潮如何配置 發布:2024-03-28 21:13:08 瀏覽:546
nginx安裝php 發布:2024-03-28 21:09:47 瀏覽:667
利用python進行數據分析pdf 發布:2024-03-28 20:33:36 瀏覽:560
php模擬post提交 發布:2024-03-28 20:23:14 瀏覽:542
phptxt下載 發布:2024-03-28 20:12:37 瀏覽:476
如何更衣櫃密碼鎖密碼設置 發布:2024-03-28 19:42:09 瀏覽:484