PHP с SQL Server 2005+

В настоящее время у нас есть гибридная настройка ASP / PHP, подключающаяся к базе данных SQL Server 2005. Но вся работа с запросами выполняется на стороне клиента, я бы хотел перенести часть этого на PHP.

Какой драйвер и / или строка подключения необходимы для подключения к Sql Svr и какой синтаксис использовать в PHP?


Обновление: ОК, так что я определенно пытался избегать использования каких-либо вещей, связанных с копированием библиотек DLL и т. Д. Я рассмотрю драйвер SQL2K5PHP (спасибо Винсенту). @jcarrascal для ясности, под "клиентской стороной" я имею в виду, что наше приложение является внутренним веб-приложением, работающим как HTA , причем все запросы выполняются через вызовы javascript в ASP, который фактически отправляет запрос БД.

21.08.2008 13:17:44
3 ОТВЕТА
РЕШЕНИЕ

У вас есть два варианта:

1) Расширение php_mssql : если вам нужно что-то с тем же API, что и mysql и mysqli, используйте расширение php_mssql. Но тут есть одна загвоздка, не работает файл ntwdblib.dll в комплекте с PHP. Вы должны найти этот файл из установки SQL Server 2000, или вы можете найти его в Интернете. Этот API предположительно не очень надежный, но я использую его без проблем около года.

http://ca.php.net/mssql

2) Драйвер PHP для Microsoft SQL Server 2005 : если вы хотите что-то более современное, но не имеющее того же API и в котором отсутствуют некоторые важные функции (mssql_num_rows). Большой плюс в том, что он поддерживается Microsoft и, вероятно, будет работать с будущей версией.

http://msdn.microsoft.com/en-us/data/cc299381.aspx

5
21.08.2008 16:53:58

PHP предоставляет расширение для доступа к базам данных Microsoft SQL Server. Чтобы использовать расширение SQL Server, все, что требуется, это активировать расширение в файле конфигурации PHP.

Подробности на странице MSDN

0
21.08.2008 13:20:33

Просто используйте функцию mssql_connect () следующим образом:

$conn = mssql_connect('localhost', 'sa' , '123456')
    or die('Can\'t connect.');
mssql_select_db('database', $conn)
    or die('Can\'t select the database');

Функции, относящиеся к SQL Server, определены в руководстве по PHP для драйвера MSSQL .

Один вопрос, однако, «вся работа с запросами выполняется на стороне клиента» WTF? : D

2
21.08.2008 13:33:18