php_pdo_odbc.dll은 하나만 있습니다.
그래서~php를 사용하여 mssql에 연결하는 가장 좋은 최신 방법은 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
< ;?php
$cnx = new PDO("odbc:Driver={SQL Server};Server=127.0.0.1;Database=test;",'sa','asd123');
var_dump($cnx );
$a = $cnx->query("SELECT * FROM [user]")
var_dump($a)
foreach($a) b) {
var_dump ($b); <🎜> php가 원격 mssql 데이터베이스에 연결할 때 오류가 발생합니다.
경고: mssql_connect(): 연결할 수 없습니다. 서버:
생각해 보세요. 예전에는 문제가 없었는데, 무슨 일이 있었던 걸까요? 나중에 온라인에서 검색해서 기사를 찾았는데, PHP를 사용하여 mssql에 연결하려면 서버에 mssql을 설치해야 한다는 것을 알게 되었습니다. 원래는 새 서버에서 mssql을 사용할 필요가 없었는데, 이제는 이렇게 되었습니다. 설치하는 수밖에 없습니다. mssql을 설치한 후에는 문제가 없습니다.
리눅스에서 apache php 하면 어떻게 될까 고민중인데 mssql 설치가 불가능하네요 ㅎㅎ 어지러워요.
다음은 발견된 기사입니다.
php 구성:
php.ini 파일에서 다음과 같이 설정하고,
;extension=php_mssql.dll을 찾아 앞에 있는 세미콜론을 제거하세요.
extension_dir = d:extension을 찾으세요.
귀하의 php.ini는 d:extension
이 아닐 수 있지만 php 설치 디렉터리 아래의 확장 디렉터리 아래에 있는 php_mssql.dll 경로로 변경해야 합니다(php 설치 경로가 가정됨). is d:php )
extensi로 변경
그런 다음 웹 서버를 다시 시작하세요
쉽지만 이러한 설정을 완료한 후에도 여전히 연결할 수 없습니다.
MS SQL Server 데이터베이스 연결 오류 발생! 데이터베이스 호스트 변수 설정이 맞는지 확인해주세요!!!
호스트 변수 설정을 몇번이나 확인했는데, 웹에서 찾아보니 아무런 문제가 없었습니다. 다음 단서:
php.com 정보:
PHP에서 SQL Server 2000에 연결하려고 합니다.
다음 경고가 나타났습니다.
경고: mssql_connect(): 서버에 연결할 수 없습니다. SERVERPortal
....... 5번 라인
5번 라인에는 다음이 있습니다:
$db_connect = mssql_connect('SERVERPortal', 'sa', 'my_passwd')
다음
1.PHP.ini에서 php_mssql.dll 확장 활성화
2. ntwdblib.dll을 포함하여 모든 dll이 적절한 위치(System32 또는 PHP 폴더)에 있습니다.
웹을 통해 많은 프로필을 검색했지만 아니요
몇 시간 후에 문제가
ntwdblib.dll(버전은 7.00.839)에 의해 발생했음을 발견했습니다. 이전 ntwdblib.dll을 새
ntwdblib.dll(버전 8.00.194)은 모든 문제가 해결되었습니다.
Windows 2003에서 MSSQL과 관련하여 많은 문제가 있었습니다.
2개의 동일한 창, php, php가 있었습니다.
연결할 수 없다는 오류 메시지가 나타났습니다.
마침내 ntwdblib.dll 버전을 확인했는데 PHP와 함께 배포된 버전은 7.00이었습니다....
SQL Server 설치 버전은 8.00이었습니다.... 그래서 이 버전을
php 및 apache 디렉토리에 복사했고 작동했습니다.
문제가 발견되었습니다. ntwdblib.dll
ntwdblib입니다. .dll의 주요 기능은 SQL Server 연결 서비스를 제공하는 것입니다.
제가 사용하는 PHP 버전은 4.3.9입니다. 설치된 서버의 windows/system32/에서 ntwdblib.dll 파일의 버전이 2000.2.8.0인 것을 확인했습니다. 이 버전은 SQL Server 7.0을 지원합니다. 설치로 인해 PHP는 dll 아래의 모든 파일을 시스템
디렉터리에 덮어쓰므로 이를 사용하여 SQL Server 2000에 연결할 때 당연히 연결할 수 없습니다.
나중에 SQL Server 2000이 정상적으로 설치된 서버에서 ntwdblib.dll의 버전이 2000.80.2039.0이라는 것을 알게 되었습니다. 이전 버전을 덮어쓰기 위해 이 파일을 복사해 두었는데, 서버를 다시 시작한 후에는 모든 것이 정상이었습니다.
보충: 데이터베이스 이름이 숫자로 시작하면 열 수 없다는 메시지도 표시됩니다. 이때는 데이터베이스 이름을 대괄호 [ ]
로 묶으면 됩니다. 예를 들어, 123bbs는 [ 123bbs]로 다시 작성됩니다. 또한, 이 상황은 데이터베이스 이름이 SQL Server의 예약어와 충돌하는 경우에도 발생합니다. 대괄호를 사용하여 해결할 수도 있습니다.
마침내, PHP가 SQL Server 2000에 올바르게 연결할 수 없는 문제가 마침내 해결되었습니다. 비록 하루의 대부분이 걸렸지만, 지금 게시하면 같은 문제에 직면한 형제들의 시간도 절약될 것입니다. . 우회.
위 내용은 mssql에 대한 PHP 연결에 대해 소개합니다. mssql에 대한 PHP 연결 내용을 포함하여 pdo odbc sql 서버에 대한 내용이 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.