我在 PHP 中使用 Jet。查询文本字段很容易,但我的主键是一个整数,我无法得到正确的字符串。我试过休耕:
SELECT * FROM Table1 WHERE 'FullName' = 'ABNER AVERY' 失败!
SELECT * FROM Table1 WHERE FullName = 'ABNER AVERY' 成功,正确显示:
(ÀoRows returned: -1
Key = INDI_ID Value = 64
Key = Given Value = ABNER
Key = Surname Value = AVERY
Key = Birth Value = 28 MAY 1712
Key = BirthPlace Value = Groton, New London, Connecticut, USA
Key = Death Value = 13 AUG 1771
Key = DeathPlace Value = Montville, New London, Connecticut, USA
Key = Mother Value = ELIZABETH BILL
Key = Father Value = JONATHAN AVERY
Key = Spouse1 Value = AMY FOX
Key = Marriage1 Value = 22 MAY 1740
SELECT * FROM Table1 WHERE INDI_ID =64 / "SELECT * FROM Table1 WHERE \"INDI_ID\"=64" 无错误,无显示
SELECT * FROM Table1 WHERE INDI_ID = 64 / SELECT * FROM Table1 WHERE INDI_ID=64 错误“(Ào”无显示
SELECT * FROM Table1 WHERE INDI_ID='64' 警告:odbc_exec(): SQL 错误:[Microsoft][ODBC Microsoft Access Driver] 条件表达式中的数据类型不匹配。,C:\xampp\htdocs\averykin 中 SQLExecDirect 中的 SQL 状态 22005 \testdb.php 第 10 行 22005
SELECT * FROM Table1 WHERE INDI_ID=\"64\" 警告:odbc_exec():SQL 错误:[Microsoft][ODBC Microsoft Access Driver] 参数太少。预期 1.,SQLExecDirect 中的 SQL 状态 07001 在 C:\xampp\htdocs\averykin\testdb.php 第 10 行 07001
列 INDI_ID 为 INTEGER 列 FullName 为 VARCHAR 列 Surname 为 VARCHAR 列 Given 为 VARCHAR 列 Sex 为 VARCHAR 列 Birth 为 VARCHAR 类型 下面是 PHP:
<?php
$conn=odbc_connect('genealogy','','');//dsn
$id=2;
$n=(int)$id;
ini_set ( 'odbc.defaultlrl' , '65536' );
$sql="SELECT * FROM Table1 WHERE INDI_ID='64'";echo $sql."</br>";
//
//FullName = 'ABNER AVERY'
//=#27-Sep-50# finds dates equal to 27 September 1950
$result=odbc_exec($conn,$sql);echo odbc_error($conn);
if (odbc_fetch_row($result))
{
$assoc=array();
while($user_detail = odbc_fetch_array($result) ) {
$assoc = array_push_assoc($assoc, 'INDI_ID', $user_detail["INDI_ID"]);
$assoc = array_push_assoc($assoc, 'Given', $user_detail["Given"]);