.bat 파일에서 .sql 파일을 실행할 필요가 있습니다. .sql 파일의 출력은 .txt 파일로 리디렉션되어야합니다. 나는 이것을 할 수 있지만 SQL 파일은 '_'에 밑줄이 쳐진 열 이름을 인쇄하고 '3 rows selected'를 인쇄하는 파일의 끝에 있습니다. 출력 파일에 열 이름과 '3 행 선택'을 표시하고 싶지 않습니다. 여기서 내가 뭘 잘못하고 있는지 지적 해 주시겠습니까? 다음은 내 코드의 세부 사항입니다. 내 sql은 sqlplus를 사용하여 oracle db에서 실행되어야합니다.배치 파일에서 SQL 스크립트를 실행하십시오. 예상대로 출력되지 않습니다.
sql_file.sql
SET HEADING OFF FEEDBACK OFF ECHO OFF PAGESIZE 0
SET UNDERLINE off
select 'This '|| emp_name || ' belongs to ' || dept_name || ' department' as emp_data from emplyoee;
exit
batch_file.bat
@echo off sqlplus -s -l scott/[email protected] @"C:\Data Files\sql_file.sql" >> "C:\Data Files\output_file.txt"
은 내가 output_file.txt 모양을 할
This Charles employee belongs to Finance department
This Chris employee belongs to Sales department
This John employee belongs to Engineering department
내 코드는 내가 개인적으로 한 줄에 SET 명령을 사용하고 있지 않다
emp_data
--------------------------------------------------
This Charles employee belongs to Finance department
This Chris employee belongs to Sales department
This John employee belongs to Engineering department
3 rows selected
헤더 및 트레일러 레코드를 제거하려면 해당 정보가 출력되지 않도록 쿼리를 변경하면됩니다. SQL 쿼리와 같은 것을 포함하도록 질문 태그를 변경해야합니다. 내 DB 사람들은 내게 항상 쿼리를 출력하고 헤더 및 트레일러 정보를 출력하지 않습니다. – Squashman
그건 이상한거야 - 난 세트의 한 - 라이너를 포함하여 SQL 스크립트를 테스트하고 그것은 나를 위해 일하고있어. 어떤 버전을 사용하고 있습니까? (11.2.0.1에서 테스트했습니다.) –
이런 종류의 문제는 다음과 같습니다. http://stackoverflow.com/questions/28689851/remove-column-header-into-the-ouput-text-file – Squashman