제목 | CI 3.X 버전 ODBC 연결 방법... | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 라산 | 작성시각 | 2023/07/26 16:28:21 |
|
|||
안녕하세요, CI 3.1.13 , PHP 7.4 / centOS 7.0 으로 웹 사이트를 개발중인데요, 다름이 아니라 config/database.php 파일에서 ODBC를 연결하는 방법에 대해서 여쭙고자 글 남깁니다. $db['default'] = array( 'dsn' => 'MySQLi://username:password@hostname:3306/database?charset=utf8&DBCollat=utf8_general_ci', 'hostname' => 'DB서버 주소', 'username' => 'DB계정', 'password' => 'DB패스워드', 'database' => '데이터베이스명명', 'dbdriver' => 'odbc', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE, ); -> odbc_connect(): SQL error: [unixODBC][Driver Manager]Invalid string or buffer length, SQL state S1090 in SQLConnect $db['default'] = array( 'dsn' => '', 'hostname' => 'DB서버주소', 'username' => 'DB계정', 'password' => '패스워드', 'database' => '데이터베이스명', 'dbdriver' => 'odbc', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE, ); -> odbc_connect(): SQL error: [unixODBC][Driver Manager]Data source name not found, and no default driver specified, SQL state IM002 in SQLConnect 구글링을 해봐도 odbc 연결 관련 및 해당 오류에 대한 정확한 내용을 찾거나 이해하기가 힘듭니다.. 혹시 CI에서 ODBC를 연결하기 위해 제가 어떤 부분을 고쳐야 하는지 알려주실 수 있으실까요??.. 부탁드립니다. 감사합니다 추가적으로 phpinfo()를 통해 현재 서버에 설치된 ODBC 관련 내용 첨부드립니다.. |
|||
다음글 | CI4 Rest API 인증 문의 (1) | ||
이전글 | CI로 제작한 함수를 GPU로 연산하기 (2) | ||
변종원(웅파)
/
2023/08/10 11:47:39 /
추천
0
dsn 입력했으니 나머지 한글로 된 부분들 지우고 테스트해보세요
|
라산
/
2023/08/10 13:04:08 /
추천
0
결국 해결했는데요, 웅파님 말씀대로 한글로 입력된 부분들은 지워도 상관이 없고 (dsn에 기재했을 경우) odbc 가 IBM I Access 여서 해당 드라이버로 연결해줘야 했습니다. 추가적으로 뒤에 CCSID:1208 (UTF-8)을 입력해줘야 데이터들이 한글로 출력되더군요.. 'dsn' => 'DRIVER=IBM i Access ODBC Driver;SYSTEM=DB주소;UID=아이디;PWD=비밀번호;database=데이터베이스;CCSID=1208;',
|