Oracle基础:程序中调用sqlplus的方式

通过sqlplus可以连接数据库根据用户权限进行数据或者设定操作,但是需要交互操作并返回结果,这篇文章介绍一下如何在程序中使用sqlplus。

环境准备

使用oracle的精简版创建docker方式的demo环境,详细可参看:

here document

因为sqlplus是控制台的方式与用户进行交互式的输入/输出对应,而在程序执行的过程中显然是需要预先定好的输入,这样可以考虑使用here document,比如希望通过sqlplus来确认数据库版本信息,则可以这样

# 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中的$需要转义

创建table

接下来使用here document的方式调用sqlplus来创建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
#

小结

sqlplus结合here document即可实现在程序中调用sqlplus。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对www.887551.com的支持。如果你想了解更多相关内容请查看下面相关链接

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐