✅ SAP에서 DBCO를 통한 DB Connection 정리
DBCO를 사용하려면 외부 DB 권한이 필요
- 외부 DB 계정 권한 없으면 SELECT/UPDATE 불가
- DB / 방화벽 / 네트워크 접근 허용 필요
➡ SAP 차원에서는 DB 접속만 제공하며, 권한은 외부 DB 책임
1. DBCO(DB Connect)의 기능
- DBCO는 SAP ABAP AS(Application Server)에서 외부 데이터베이스로 접속하기 위한 DB Connection을 관리하는 트랜잭션이다.
- SAP에서 제공하는 표준 기능이며 SAP Note/Help 문서에 명시된 기능이다.
- DBCO에서 생성한 커넥션은 ABAP Open SQL 또는 Native SQL에서 사용 가능하다.
➡ 즉, SAP에서 DBCO는 “SAP → 외부 DB로 접속하는 링크” 기능을 제공하지만
Oracle의 DBLINK처럼 DB 레벨에서 동작하는 기능은 아니다.
→ ABAP 레이어의 Connection이다.
2. DBCO로 연결 가능한 DB
SAP 공식 문서 기준, 아래 DBMS와 연결 설정이 가능하다.
- Oracle
- MSSQL
- SAP HANA
- IBM DB2
- MaxDB
- 기타 SAP 지원 DB
➡ 단, JDBC 드라이버가 필요할 수 있는 DB는 BASIS 설치가 필요하다.
3. DBCO로 외부 DB 연결을 만들 때 필요한 정보
DBCO에서 등록 시 SAP에서 요구하는 항목은 다음 6개뿐이다:
| 필드 | 설명 |
| CON_NAME | 커넥션 이름 |
| DBMS | DBMS 유형 |
| User | 외부 DB 사용자 |
| Password | 외부 DB 비밀번호 |
| Server | 연결 문자열 사용 시 비워둠 가능 |
| Connect string | JDBC/Native 접속 문자열 |
4. ABPB 에서 DBCO 연결 예제
✔ ABAP Open SQL 문법
SELECT *
FROM z_table
CONNECTION ('MYCONN')
INTO TABLE @DATA(result).
✔ Native SQL 문법
EXEC SQL.
CONNECT TO 'MYCONN'
ENDEXEC.
EXEC SQL.
SELECT * FROM ext_table
ENDEXEC.
✔ Native SQL Error 처리 Rollback
TRY.
EXEC SQL.
INSERT INTO emp VALUES ('A')
ENDEXEC.
CATCH cx_sy_native_sql_error INTO DATA(lx_sql).
ROLLBACK WORK.
" 오라클/외부 DB 오류 메시지 확인
MESSAGE lx_sql->get_text( ) TYPE 'E'.
ENDTRY.
➡ CX_SY_NATIVE_SQL_ERROR 발생해도 자동 ROLLBACK은 절대 수행되지 않으므로 ROLLBACK 처리
'ERP(SAP)' 카테고리의 다른 글
| [SAP] 📝 MM 3-Way 매칭 (PO, GR, IV) (1) | 2025.11.27 |
|---|---|
| [SAP] 📌 MM - pMRP(예측 MRP) (0) | 2025.11.25 |
| [SAP] ABAP, SAP BTP 기초 무료 강의 추천 (1) | 2025.11.21 |
| 📘 SAP MM 교육자료, 매뉴얼, T-code (2) | 2025.11.18 |
| [SAP] 🏛️ MDG(Master Data Governance)란? (0) | 2025.11.06 |
