php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #13604 odbc_primarykeys with Access
Submitted: 2001-10-08 16:58 UTC Modified: 2002-09-09 01:00 UTC
Votes:16
Avg. Score:4.6 ± 1.0
Reproduced:15 of 15 (100.0%)
Same Version:5 (33.3%)
Same OS:8 (53.3%)
From: phperror at gustl dot at Assigned:
Status: No Feedback Package: ODBC related
PHP Version: 4.0.6 OS: W98, W98SE
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: phperror at gustl dot at
New email:
PHP Version: OS:

 

 [2001-10-08 16:58 UTC] phperror at gustl dot at
Hi, 

i don't get odbc_primarykeys () working with access-dbs. example:

<?php
    $dsn = "accessdsn"; $user = ""; $pass = ""; $db = "accessdb";
#    $dsn = "mssqldsn"; $user = ""; $pass = ""; $db = "mssqldb";
#    $dsn = "mysqldsn"; $user = ""; $pass = ""; $db = "mysqldb";

$con = odbc_connect ($dsn, $user, $pass) or die ("no connect to $dsn");

$res = odbc_tables ($con, $db, "", "%", "'TABLE'") or die ("no tables in $db of $dsn");
odbc_result_all ($res);

echo "<h2>Tables in db $db of $dsn</h2>";
$res = odbc_tables ($con, $db, "", "%", "'TABLE'") or die ("no tables in $db of $dsn");
while (odbc_fetch_row ($res)) {
  $qualifiers [] = odbc_result ($res, 1);
  $owners     [] = odbc_result ($res, 2);
  $tables     [] = odbc_result ($res, 3);
}
print_r ($tables);

reset ($tables);
while (list ($i, $table) = each ($tables)) {
  echo "<h2>keys of ".$table." (".$qualifiers [$i].", ".$owners [$i].")</h2>";
  $res = odbc_primarykeys ($con, $qualifiers [$i], $owners [$i], $table);
  if ($res)
    odbc_result_all ($res);
  else
    echo (odbc_error ().": ".odbc_errormsg ()."<BR>");
}
##
##  must close, otherwise php 4.05RC1, 4.06 crashes
##
odbc_close ($con);
echo ("ende");

?>

in PHP4.06 I get the following php errormsg:
Warning: SQL error: , SQL state 00000 in SQLPrimaryKeys in c:/arbeit/test/odbc2.php4 on line 23
00000: 
I tried all the combinations of setting the parameters with spaces and/or "%", no chance.

Gustav Graf

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-06-06 13:00 UTC] josh at engledental dot com
I get the same error when trying to run odbc_specialcolumns.  SQL state 00000 is success, so I guess its the ODBC driver which isn't handling things correctly?  Any ideas?
 [2002-07-29 12:55 UTC] jeff dot albert at ualberta dot ca
Hello,
I'm having the same problem with win2k, Apache, and PHP 4.2.2, accessing any of a number of Access databases; the error seems to occur with any attempt access any of the following functions:

odbc_columns
odbc_columnprivileges
odbc_tables
odbc_tableprivileges

incidentally, occasionally the tables functions will actually cause php.exe to crash outright. Here's the simplest example of code that causes the problem:

<?php
$con = odbc_connect("dev", "", "");
$result = odbc_columnprivileges($con, "", "", "", "%");
?>

cheers,
jeff albert
 [2002-07-29 13:58 UTC] kalowsky@php.net
Jeff please limit yourself to one bug report per bug.  If you have issues with other ODBC functionality, feel free to open a seperate bug report.  
 [2002-08-05 20:38 UTC] kalowsky@php.net
Using the latest CVS I cannot get your sample code to work at all.  It seems the $tables is never populated on my end.  Any chance you can post a sample schema, or see if this is still happening?
 [2002-09-09 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 [2003-07-12 03:04 UTC] sa_kelkar at yahoo dot com
I have same problem with odbc_primarykeys when i am using with the DB2. Please guide me

my code is
<?php
	//include 'conn.inc';

$usernm="db2admin";
$pwd="nic20pao03lx#";
$schemaname="db2admin.";
$conn=odbc_connect("PAOLX",$usernm,$pwd);

$m=odbc_primarykeys($conn,"SYSIBM","SYSIBM","TB_DDO_ELECTRICITY");
echo $m;
?>
 [2006-08-11 03:45 UTC] kaspernj at gmail dot com
Hi,

I have the exact same problem with the latest CVS of PHP 5.1, Access-database saved with Access 2003, Windows XP 32bit with SP2 and all the latest updates (11-08-2006).

The warning I get is this:
Warning: odbc_primarykeys(): SQL error: , SQL state 00000 in SQLPrimaryKeys in D:\phpprogs\knj_sqladmin\DBConn.php on line 357

...with the following code:
<?
   $f_gpk = odbc_primarykeys($this->conn, "", "", $tablename);
?>

$this->conn is being used many times, before it fails on "odbc_primarykeys()", so I have established a connection to the Access database - I am sure. It is possible to read the tables data.

odbc_columns() works as espected.
odbc_tables() works as espected.
 [2007-05-26 12:16 UTC] ahmedmatah at yahoo dot com
fffff
 [2009-05-09 20:28 UTC] joost at cnoc dot nl
This is not so strange, since MS Access doesn't support the odbc  SQLPrimaryKeys-api call. So this will never work as long as Microsoft doesn't fix this.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 06:01:30 2024 UTC