2014-03-27 2 views
1

이 오류 메시지를 발견했습니다. 특히 흥미로운 점은 ActivePerl-5.18에서이 문제가 발생하지 않는다는 것입니다. 나는 cygwin에서 perl-5.14 버전으로 만 이것을 가지고있다.'old-style'구문을 사용하여 DBI-> connect가 사용되지 않으며 이후 버전에서 오류가 발생합니다.

my $dbh = DBI->connect("dbi:Oracle:$dbname","$login","$password"); 
정확한 원인은 무엇

, 현재 구문 :

나는 다음과 같은 명령이 메시지가? 이 명령으로 ActivePerl-5.18을 사용하지 않은 이유는 무엇입니까?

답변

4

게시 한 코드에서 오류가 발생하지 않아야합니다. 이 오류는 DBI::connect()에 네 개의 인수가 지정되고 네 번째 인수가 참조가 아닌 경우 트리거됩니다. 네 번째 인수로 데이터베이스 드라이버의 이름을 전달할 수 있도록 오류가 참조하는 "구식"연결. 이 내용은 connect() 설명서의 마지막 단락에 설명되어 있습니다.

connect()에 3 개의 인수 만 전달하므로 코드에서 해당 오류가 표시되지 않습니다. 파서가 이 실제로 혼동하지 않는 한 글쎄,은 혼란 스럽습니다. -/

아마도 우리는 더 많은 코드를보아야 할 것입니다.