Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

SQL 스크립트 실행 중 PRINT 문을 에코(Echo)하여 출력하는 방법

SQL 스크립트 실행 중 에코 출력문 사용하기

SQL 스크립트를 실행하는 도중에 메시지나 상태를 화면에 출력(에코)하려면 SELECT 문을 활용하면 됩니다. 별도의 PRINT 명령어 없이도 간단한 SELECT 구문으로 원하는 문자열을 결과 집합 형태로 표시할 수 있습니다.

기본 문법

에코 출력을 위한 기본 문법은 다음과 같습니다.

SELECT '출력할_문자열' AS '';

기본 예제

실제 쿼리를 통해 확인해 보겠습니다.

mysql> select 'This is a SQL Script' AS '';

위 쿼리의 실행 결과는 다음과 같습니다.

+----------------------+
|                      |
+----------------------+
| This is a SQL Script |
+----------------------+
1 row in set, 1 warning (0.00 sec)

동적 데이터와 함께 활용하기

단순한 고정 문자열뿐만 아니라, concat() 함수를 사용하면 INSERT, UPDATE, DELETE 등 데이터 조작 작업의 결과를 동적으로 포함시켜 출력할 수 있습니다. 예를 들어 처리된 행(row) 수를 함께 보여주는 방식입니다.

mysql> select concat("Inserted ", row_count(), " rows successfully") AS '';

실행 결과는 다음과 같습니다.

+-------------------------------+
|                               |
+-------------------------------+
| Inserted -1 rows successfully |
+-------------------------------+
1 row in set (0.00 sec)

참고 사항

위 예제에서 -1이 출력된 이유는 row_count() 함수가 바로 직전에 실행된 DML 문의 영향을 받는 행 수를 반환하기 때문입니다. 실제 INSERT, UPDATE, DELETE 문 직후에 호출하면 실제 처리된 행 수가 정확하게 표시됩니다. 따라서 스크립트 내에서 진행 상황이나 작업 결과를 추적하고 싶다면, 각 DML 문 바로 뒤에 concat() 함수와 row_count()를 조합한 SELECT 문을 배치하는 것이 좋습니다.