안녕하세요?
항상 도움 주셔서 감사합니다.
특이한 현상을 경험해서 이런 경험 해보시고 해결하신 분이 있을까 해서 문의드립니다.
OLEDB 방식 오라클 클라이언트 프로그램을 PC1과 PC2에서 실행하는데 서로 값이 다르게 나와서 해결할 수 있는 방법이 있는지 문의드립니다.
PC1과 PC2는 윈도우 서버이며 서로 버전이 다릅니다.
그리고 PC1과 PC2는 서로 다른 ODAC 버전이 설치되어 있습니다.
오라클 OLEDB방식 접속 후 SELECT 'TEST' TEST_VALUE FROM DUAL의 값을 C# DataTalbe 로 가져온 다음
String 변수값에 넣으면 PC1은 'TEST'로 가져오고 PC2는 'TEST____________' 이렇게 공백이 들어간 상태로 가져오네요.
마치 ORACLE의 VARCHAR2 와 CHAR의 자료형을 가져오는 것 처럼 값을 가져옵니다.
PC2와 동일한 버전의 ODAC가 설치되어 있는 또 다른 PC에서 OLEDB 방식으로 접속해서 가져오면 'TEST' 이렇게 값을 가져오네요.
테이블의 컬럼값을 가져오지 않고 저렇게 SELECT 구문에 문자열 값을 지정했을 때 해당 값의 형태를 VARCHAR2로 설정할 수 있는
ODAC의 OLEDB 설정이나 C# 코드 자체에서 설정, 혹은 다른 설정할 수 있는 방법이 있는지 궁금합니다.
C#에서 string변수 값으로 가져와서 Trim 처리를 하거나 오라클 쿼리의 CAST를 사용해서 캐스팅 하지 않고 혹시 해결할 수 있는 방법 아시는 분 가르쳐 주시면 감사하겠습니다.
즐거운 주말 보내세요.
[최초 등록일: ]
[최종 수정일: 4/14/2023]