通過sqlplus可以連接數(shù)據(jù)庫根據(jù)用戶權(quán)限進行數(shù)據(jù)或者設(shè)定操作,但是需要交互操作并返回結(jié)果,這篇文章介紹一下如何在程序中使用sqlplus。
環(huán)境準備
使用Oracle的精簡版創(chuàng)建docker方式的demo環(huán)境。
Here Document
因為sqlplus是控制臺的方式與用戶進行交互式的輸入/輸出對應(yīng),而在程序執(zhí)行的過程中顯然是需要預(yù)先定好的輸入,這樣可以考慮使用Here Document,比如希望通過sqlplus來確認數(shù)據(jù)庫版本信息,則可以這樣
# sqlplus system/liumiao123 <<EOF
>
select
*
from
v\$version;
> EOF
SQL*Plus: Release 11.2.0.2.0 Production
on
Sun Oct 21 11:06:42 2018
Copyright (c) 1982, 2011, Oracle.
All
rights reserved.
Connected
to
:
Oracle
Database
11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL>
BANNER
--------------------------------------------------------------------------------
Oracle
Database
11g Express Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS
for
Linux: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production
SQL> Disconnected
from
Oracle
Database
11g Express Edition Release 11.2.0.2.0 - 64bit Production
#
注意:需要注意v$version中的$需要轉(zhuǎn)義
創(chuàng)建table
接下來使用Here Document的方式調(diào)用sqlplus來創(chuàng)建table
# sqlplus system/liumiao123 <<EOF
>
create
table
student (
> stuid number(4),
> stuname varchar2(50),
>
primary
key
(stuid)
> );
>
desc
student;
> EOF
SQL*Plus: Release 11.2.0.2.0 Production
on
Sun Oct 21 11:11:52 2018
Copyright (c) 1982, 2011, Oracle.
All
rights reserved.
Connected
to
:
Oracle
Database
11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> 2 3 4 5
Table
created.
SQL>
Name
Null
? Type
----------------------------------------- -------- ----------------------------
STUID
NOT
NULL
NUMBER(4)
STUNAME VARCHAR2(50)
SQL> Disconnected
from
Oracle
Database
11g Express Edition Release 11.2.0.2.0 - 64bit Production
#
小結(jié)
sqlplus結(jié)合Here Document即可實現(xiàn)在程序中調(diào)用sqlplus。
總結(jié)
以上就是Oracle數(shù)據(jù)庫基礎(chǔ):程序中調(diào)用sqlplus的方式的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值。
- Oracle數(shù)據(jù)庫多條sql執(zhí)行語句出現(xiàn)錯誤時的控制方式
- oracle數(shù)據(jù)庫通過sqlplus連接的幾種方式介紹
- oracle數(shù)據(jù)庫常用分析函數(shù)與聚合函數(shù)的用法
- oracle數(shù)據(jù)庫連續(xù)相同數(shù)據(jù)的統(tǒng)計方法
- 關(guān)于oracle數(shù)據(jù)庫全角數(shù)字轉(zhuǎn)換半角數(shù)字方法
- 詳解SQL Server 2012數(shù)據(jù)庫備份與還原的教程
- 利用SQL Server Management Studio(SSMS)復(fù)制數(shù)據(jù)庫
- SQL Server數(shù)據(jù)庫中Substring函數(shù)的用法實例詳解
- MsSql數(shù)據(jù)庫使用SQL plus創(chuàng)建DDL和DML操作方法
- 關(guān)于PHP往mysql數(shù)據(jù)庫中批量插入數(shù)據(jù)實例教程
分享到:
投訴收藏