sqlsrv_query () ожидает, что параметр 1 будет ресурсом, указанный объект [duplicate]

Когда вы конвертируете .1 или 1/10 в base 2 (двоичный), вы получаете повторяющийся шаблон после десятичной точки, точно так же, как пытаетесь представить 1/3 в базе 10. Значение не является точным, и поэтому вы можете 't делать точную математику с ней, используя обычные методы с плавающей запятой.

10
задан Mureinik 24 February 2016 в 11:40
поделиться

3 ответа

Сначала, если я не ошибаюсь, вы сохраняете результат sqlsrv_connect в $conn, и этот результат не является классом obj его ресурсом, поэтому remove $db->conn

В этом примере будет connect, затем выберите, если есть ресурсы, возвращенные из 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));
}
10
ответ дан Luis Siquot 26 August 2018 в 06:29
поделиться

Попробуйте следующее:

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

sqlsrv_free_stmt($result);
0
ответ дан Grzegorz Motyl 26 August 2018 в 06:29
поделиться

После успешного выполнения запроса с помощью sqlsrv_query вы можете получить результаты, например, с помощью 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 />";
}
1
ответ дан Mureinik 26 August 2018 в 06:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: