help cursors odbc_connect odbc_fetch_row

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I am using the odbc support in PHP 5.2 to connect to a sqlserver 2005
database. The odbc driver being used is the SQLSRV32.dll provided
as part of the install.

In the code below I  find that if I use SQL_CUR_USE_ODBC as an option
to odbc_connect, the odbc_fetch_row() call below fails even though the
odbc_exec was successful.

However, if I remove the SQL_CUR_USE_ODBC option the code executes
successfully.

I have another query that uses some left outer joins on two tables and
am only able to read the results with odbc_fetch_row only if
SQL_CUR_USE_ODBC is used in odbc_conect.

How does one decide which cursor option to use?

Thanks
Abhay

$connect = odbc_connect("DB", "xx", "xxxx", SQL_CUR_USE_ODBC);
if (!$connect) {
    print("Connect failed.");
    exit();
}
$query="SELECT TOP 1 Version FROM Versions ORDER BY VersionIndex
DESC";
$result = odbc_exec($connect, $query);
if (!$result) {
   print(" Failed to execute $query.");
   exit();
}
//odbc_fetch_row below is successful if no cursor or SQL_CURSOR_FORWARD_ONLY
//is specified in the odbc_connect call. Why does
//SQL_CUR_USE_ODBC fail?
if (odbc_fetch_row($result)) { 
   $data = odbc_result($result, 1);
   print("GOT data $data.");
}

           var callCount = 0; function rmvScroll( msg ) {  if ( ++callCount > 10 ) { msg.style.visibility = "visible"; }    if ( callCount  msg.clientHeight ) {   newHeight = msg.scrollHeight + delta;  }  delta = msg.offsetWidth - msg.clientWidth;  delta = ( isNaN( delta )? 1 : delta + 1 );  if ( msg.scrollWidth > msg.clientWidth ) {   newWidth = msg.scrollWidth + delta;  }  msg.style.overflow = "visible";  msg.style.visibility = "visible";    if ( newWidth > 0 || newHeight > 0 ) {   var ssxyzzy = document.getElementById( "ssxyzzy" );   var cssAttribs = ['#' + msg.id + '{'];   if ( newWidth > 0 ) cssAttribs.push( 'width:' + newWidth + 'px;' );   if ( newHeight > 0 ) cssAttribs.push( ' height:' + newHeight + 'px;' );   cssAttribs.push( '}' );   try {    ssxyzzy.sheet.deleteRule( 0 );    ssxyzzy.sheet.insertRule( cssAttribs.join(""), 0 );   } catch( e ){}  } } function imgsDone( msg ) // for Firefox, we need to scan for images that haven't set their width yet {  var imgList =
 msg.getElementsByTagName( "IMG" );  var len = ((imgList == null)? 0 : imgList.length);  for ( var i = 0; i   [input]  [input]  [input]  [input]  [input]  [input]  [input]  [input]                                                                                      Delete        Reply    
       
---------------------------------
Never miss a thing.   Make Yahoo your homepage.

[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux