Запуск сценариев SQL в виде пакетного файла Windows - PullRequest
0 голосов
/ 19 сентября 2018

Я использую Oracle 11g и у меня SQL-запрос Oracle (не SQL +), как показано ниже

spool E:\teST\log.txt

select username,account_status, created, default_tablespace 
from dba_users where username='MMCANE';
spool off

exit;

, который я собираюсь запустить как командный файл Windows, и для этого я создал .bat-файл с конфигурациейкак показано ниже

sqlplus *username*/*password*@*database* @E:\teST\Untitled.sql

Где Без названия.sql - это запрос на выбор, который выполняется

1.Смогу ли я запустить его как SQL, а не как SQL Plus?

При запуске командного файла генерируется требуемый вывод в виде текстового файла, но, поскольку я запускаю его как sqlplus, я получаю неформатированный выводтекстовый файл (см. ниже)

   USERNAME ACCOUNT_STATUS                                                            
---------- --------------------------------  
CREATED    
--------------------------------------------------------------
DEFAULT_TABLESPACE                                                                     
--------------------------------------------------------------------------------
   MMCANE OPEN                                                              
13-SEP-17
USERS

, в отличие от выходных данных скрипта (см. ниже), которые создаются при запуске запроса в самом SQL-разработчике

USERNAME             ACCOUNT_STATUS            CREATED                  DEFAULT_TABLESPACE             
------------------  ----------------------------- ------------------------- ----------------------- 
 MMCANE              OPEN                      13-SEP-17                 USERS  

2.Есть ли способ отформатировать его?Если да, то где мне дать команду?

Я пытался указать linesize, wrap и другие команды в запросе, но не работал, так как я написал запрос в OracleSQL.Любая помощь будет принята с благодарностью.

Спасибо.

1 Ответ

0 голосов
/ 25 сентября 2018

Сценарий VBA может быть путь?

dim cn, rs

set cn = CreateObject("ADODB.Connection")
set rs = CreateObject("ADODB.Recordset")
cn.connectionString = "Driver={MySQL ODBC 5.1 Driver};Server=yourServerAddress;" & _
                   "Database=yourDataBase;User=yourUsername;" & _
                   "Password=yourPassword;"
cn.open
rs.open "select * from Countries", cn, 3
rs.MoveFirst
while not rs.eof
    wscript.echo rs(0)
    rs.next
wend
cn.close
wscript.echo "End of program"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...