14

I am migrated from MySQL to MS SQL Server, and trying to fetch all data from the routines table. I am connected but unsure how to fetch data with sqlsrv. This is how far I have came:

$conn_array = array (
    "UID" => "sa",
    "PWD" => "root",
    "Database" => "nih_bw",
);
$conn = sqlsrv_connect('BILAL', $conn_array);
if ($conn){
    echo "connected";
    $result = sqlsrv_query($db->db_conn,"SELECT * FROM routines");
}else{
    die(print_r(sqlsrv_errors(), true));
}
sqlsrv_close($conn);
?>

4 Answers 4

15

First if I'm not wrong you are storing sqlsrv_connect result into $conn and this result isn't a class obj its a resource, so remove $db->conn

This example, will connect, then fetch if there are resources returned from sqlsrv_query

$conn_array = array (
    "UID" => "sa",
    "PWD" => "root",
    "Database" => "nih_bw",
);
$conn = sqlsrv_connect('BILAL', $conn_array);
if ($conn){
    echo "connected";
    if(($result = sqlsrv_query($conn,"SELECT * FROM routines")) !== false){
        while( $obj = sqlsrv_fetch_object( $result )) {
              echo $obj->colName.'<br />';
        }
    }
}else{
    die(print_r(sqlsrv_errors(), true));
}
Sign up to request clarification or add additional context in comments.

Comments

2

After you've successfully executed the query with sqlsrv_query you can fetch the results, e.g., by using sqlsrv_fetch_array:

$result = sqlsrv_query($db->db_conn, "SELECT * FROM routines");
if($result === false) {
    die( print_r( sqlsrv_errors(), true) );
}

while( $row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC) ) {
    echo $row['column1'].", ".$row['column2']."<br />";
}

2 Comments

I get this error: dropbox.com/s/lod1s8olf1iwog3/errors.png, its in the $result line it errors.
@user3185936 Why are you using $db->db_conn? You set connection to $conn with sqlsrv_connect() so use it: $result = sqlsrv_query($conn, "SELECT * FROM routines");
0

Try this:

while( $row = sqlsrv_fetch_array( $result, SQLSRV_FETCH_ASSOC) ) {
  var_dump($row);
}

sqlsrv_free_stmt($result);

1 Comment

When you answer with code, please provide a brief explanation along with the code.
0
$conn_array = array (
    "UID" => "sa",
    "PWD" => "root",
    "Database" => "nih_bw",
);
$conn = sqlsrv_connect('BILAL', $conn_array);
if ($conn){
    echo "connected";
    if(($result = sqlsrv_query($conn,"SELECT * FROM routines")) !== false){
        while( $obj = sqlsrv_fetch_object( $result )) {
              echo $obj->colName.'<br />';
        }
    }
}else{
    die(print_r(sqlsrv_errors(), true));
}

that work great for me, but please any one can help me to display the result on a table ?

I mean this parts :

while( $obj = sqlsrv_fetch_object( $result )) {
              echo $obj->colName.'<br />';
        }

1 Comment

This does not provide an answer to the question. You can search for similar questions, or refer to the related and linked questions on the right-hand side of the page to find an answer. If you have a related but different question, ask a new question, and include a link to this one to help provide context. See: Ask questions, get answers, no distractions

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.