如何使用 powershell 中的 sqlplus 运行 .sql 文件

Posted

技术标签:

【中文标题】如何使用 powershell 中的 sqlplus 运行 .sql 文件【英文标题】:How to run .sql file using sqlplus from powershell 【发布时间】:2018-08-16 05:51:25 【问题描述】:

我正在尝试以 .sql 文件形式从 powershell 运行:-

sqlplus username/password@TnsAlias 'c:\path\to\DBscript.sql'

这里的 TnsAlias 指的是我的 ORACLE_SID

每当我运行这个命令时,我都会得到 sqlplus 的标准使用说明。

有人可以帮我解决这个问题吗?

如果有帮助,我正在 Windows Server 2012 和 Powershell 4.0 版上运行它。

【问题讨论】:

尝试不使用sqlfile的测试连接sqlplus username/password@TnsAlias 【参考方案1】:

这对我有用:

PS M:\> sqlplus scott/tiger@kc11g "@m:\dbscript.sql"

SQL*Plus: Release 11.2.0.1.0 Production on ╚et Kol 16 07:59:25 2018

Copyright (c) 1982, 2010, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options


    DEPTNO DNAME          LOC
---------- -------------- -------------
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON

SQL>

【讨论】:

我正在使用 Oracle 12.1.0.2.0 你认为这可能是它无法运行的原因吗 我不确定您是否注意到调用 SQL 脚本的方式和我执行它的方式的不同。应该是"@m:\dbscript.sql"。我不认为数据库版本的差异与它有任何关系。

以上是关于如何使用 powershell 中的 sqlplus 运行 .sql 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 powershell 中的 sqlplus 运行 .sql 文件

如何使用powershell将文本($)替换为文本文件中的引号

如何使用 cmd / powershell 对文件夹中的所有程序执行 taskkill

如何信任 Windows Powershell 中的证书

如何使用 PowerShell 删除 OneDrive 中的非空文件夹?

PowerShell:如何计算 csv 文件中的行数?