anon3776
anon3776

Reputation: 33

Can't retrieve data from MS SQL with PDO

I use PDO on my local computer to connect to MS SQL server to use prepare statements. The driver is installed properly and can connect to database. Here's the code:

try {
    $con = new PDO("sqlsrv:Server={$host};Database={$db_name}", $username, $password);
    }
catch(PDOException $exception){
echo "Connection error: " . $exception->getMessage();
}

$query = "SELECT TOP 10 ClientID FROM CLIENT";
$stmt = $con->prepare($query);
$stmt->execute();
$num = $stmt->rowCount();
print $num;

From SSMS the query returns as it should, but nothing from the code as it prints -1 as the result of $num. If i change the query to SELECT @@VERSION it prints the version properly but not my query. My query is right from SSMS and PDO can connect to server but can't figure out where the problem is it's so frustrating please help.

Upvotes: 0

Views: 1822

Answers (1)

Mimouni
Mimouni

Reputation: 3640

can you try :

try {
    $con = new PDO("sqlsrv:Server={$host};Database={$db_name}", $username, $password);
    }
catch(PDOException $exception){
echo "Connection error: " . $exception->getMessage();
}

$query = "SELECT TOP 10 ClientID FROM CLIENT";
$stmt = $con->prepare($query);
$stmt->execute();
$rows = $stmt->fetchAll();
$num = count($rows);
print $num;

// To print results :
foreach ($rows as $row) {
    echo $row["ClientID"] . "<br/>";
}

Upvotes: 1

Related Questions