sqlsrv将指针重置为first而不获取记录

时间:2018-11-01 17:18:20

标签: php sqlsrv

我用while循环遍历sqlsrv结果集

sqlsrv_fetch($result_s4, SQLSRV_SCROLL_FIRST);

稍后在我的代码中,我想使用while再次遍历结果集,但是我不知道如何在没有记录的情况下重置为FIRST。

这将重置指针,但还会获取一条记录并移动指针:

   while ( $row = sqlsrv_fetch_array($result_set, SQLSRV_SCROLL_FIRST) ) {

}

我不希望它获取记录!我想用相同的数据集准备另一个while循环。我试过了,但是没用。

<Form className='col-12'>
    <input type='file' className='custom-file-input' id='batch-file'
           onChange={e => this.setState({file: e.target.files[0], fileName: e.target.files[0].name})}/>
    <label className='custom-file-label' htmlFor='customFile'>{this.state.fileName}</label>
</Form>

如何重置指针,但在过程中不获取记录?

1 个答案:

答案 0 :(得分:0)

请注意,我在sqlsrv_query调用中使用了这种样式的游标:

$conn_cursor = array("Scrollable" => 'buffered');    
$result_set = sqlsrv_query($conn, $query, $params, $conn_cursor); 

我能够欺骗并再次将指针重置为第一条记录,而无需获取这样的实际数据行:

sqlsrv_fetch($result_set, SQLSRV_SCROLL_ABSOLUTE, -1);

现在我可以同时循环遍历它。