Wymagania

Wymagania dla platform Win32.

Rozszerzenie wymaga aby w systemie, w którym jest zainstalowany PHP, znajdowały się narzędzia MS SQL Client Tools. Client Tools można zainstalować z płyty instalacyjnej serwera MS SQL Server lub skopiować plik ntwdblib.dll z katalogu \winnt\system32 systemu, na którym jest uruchomiony serwer do katalogu \winnt\system32 systemu, na którym znajduje się PHP. Skopiowanie ntwdblib.dll powinno umożliwić tylko dostęp poprzez potoki nazwane. Pełna konfiguracja klienta wymaga instalacji wszystkich narzędzi Client Tools.

To rozszerzenie nie jest już dostępne na Windows od PHP 5.3 i nowszych wersji.

SqlSrv - opcjonalny sterownik do MS SQL jest dostępny na witrynie firmy Microsoft: » http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx.

Wymagania dla platform Unix/Linux.

Aby używać rozszerzenia MSSQL w Unix/Linux, należy najpierw skompilować i zainstalować bibliotekę FreeTDS. Kod źródłowy i instrukcje instalacji są dostępne na witrynie FreeTDS: » http://www.freetds.org/

Informacja:

W Windows jest używana DBLIB Microsoftu. Funkcje, które zwracają nazwy kolumn używają wewnętrznej funkcji DBLIB dbcolname(). DBLIB została zaprojektowana dla SQL Server 6.x gdzie maksymalna długość identyfikatora wynosiła 30. Z tego powodu, maksymalna długość zwracanej nazwy kolumny wynosi 30 znaków. Na platformach gdzie używa się FreeTDS (Linux), nie ma takiego problemu.

Informacja:

W Windows z zainstalowanym serwerem MSSQL 2005 lub nowszym należy skopiować bibliotekę ntwdblib.dll do katalogu w którym jest zainstalowany PHP i w razie potrzeby nadpisać znajdującą się tam bibliotekę. Należy to zrobić, gdyż wersja biblioteki dystrybuowana z PHP jest przestarzała. Innym sposobem nawiązania połączenia z MSSQL są rozszerzenia: » http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx, ODBC, PDO_DBLIB lub PDO_ODBC.

add a note add a note

User Contributed Notes 2 notes

up
2
gustavo dot beavis at gmail dot com
8 years ago
I had problems with freeTDS version 4.2, and I believe that versions prior to 7.0 have this limit of 30 characters per fields.

I solved the problem by changing to version 8.0
up
0
mihabo at hotmail dot com
14 years ago
I have struggled a lot to make PHP connect to a MS SQL server from under a Linux (using FreeTDS).
I installed the latest FreeTDS and tried to use usual host:port to connect to a server.
Finally when I configured freetds.conf like that:

[mysrvalias]
        host = 192.168.17.17
        port = 1433
        tds version = 7.0

and used mysrvalias instead of the 192.168.17.17:1433, it worked!
To Top