У меня есть опыт работы с PDO, но я до сих пор работал с MySQL.Мне нужно было работать с PDO + SQL Server, но, похоже, что-то странное происходит.
<?php
$dsn = 'dblib:dbname=my_db;host=127.0.0.1'; //dbname and host is on different server, not localhost
$user = 'username';
$password = 'password';
try {
$db = new PDO($dsn, $user, $password);
$db->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
}
catch(PDOException $e) {
echo $e->getMessage();
}
?>
Я получаю следующую ошибку;
SQLSTATE [HY000] Общая ошибка SQL Server:Проверьте сообщения от SQL Server.(уровень серьезности 5)
Я прямо сейчас запутался, что не так с моим кодом.Dblib установлен на сервере, я даже не делал никаких запросов, и этот код должен работать нормально.Где бы я ни проверял интернет, каждый раз это один и тот же код.Вот почему я уверен, что в моем коде нет ничего плохого.
Я буду рад, если кто-нибудь, имеющий опыт работы с ним, сможет помочь мне с этим.
PS Я в курсеиз-за того, что dblib находится в экспериментальном состоянии, он все же должен быть в состоянии установить соединение.
Спасибо за вашу помощь и время заранее.
РЕДАКТИРОВАТЬ:
Проблема частично решена.Благодаря Uzay Teknoloji A.Ş. они создали базу данных SQL Server 2008 R2 для меня, чтобы проверить установление соединения с SQL Server.База данных, которую я пытался подключить ранее, была SQL Server 2000. Кажется, SQL Server 2000 не поддерживает dblib.