所有从 php 中的 ms access 数据库中检索数据

     2023-03-29     248

关键词:

【中文标题】所有从 php 中的 ms access 数据库中检索数据【英文标题】:all retrieve data from ms accesss database in php 【发布时间】:2019-04-06 07:00:42 【问题描述】:

使用 odbc 驱动程序从 php 中的 ms access 数据库 2007 中检索数据。使用查询检索所有数据,但它只获取一条记录检索其他数据不检索。

下面查询了三条记录,但它只检索到一条数据。 php中代码下面的哪个问题?如何使用此代码中的查询获取所有数据有什么变化?

 <?PHP

    include 'Connection2.php';



    $sql = "select FYearID,Description,FromDate,ToDate  from mstFinancialyear";


    $stmt = odbc_exec($conn, $sql);
    //print_r($stmt);
    $rs = odbc_exec($conn, "SELECT Count(*) AS counter from mstFinancialyear");

    //print_r($stmt);

    $arr = odbc_fetch_array($rs);
    $arr1 = $arr['counter'];
    $result = array(); 

    //print_r($arr);


     if (!empty($stmt)) 

            // check for empty result
            if ($arr1 > 0) 
    // print_r($stmt);

                $stmt1 = odbc_fetch_array($stmt);




               $year = array();
                $year['FYearID'] = $stmt1['FYearID'];
                $year['Description'] = $stmt1['Description'];
                $year['FromDate'] = $stmt1['FromDate'];
                $year['ToDate'] = $stmt1['ToDate'];


                // success
                $result["success"] = 1;

                // user node
                $result["year"] = array();


                array_push($result["year"], $year); 

                echo json_encode($result);

                //return true;

             else 
                // no product found
                $result["success"] = 0;
                $result["message"] = "No product found";




                echo json_encode($result);


            


            odbc_close($conn); //Close the connnection first
    

    ?>

【问题讨论】:

【参考方案1】:

您只返回 JSON 数据中的一条记录,因为您没有遍历记录集。最初我误读了您在同一个记录集上调用了两次odbc_fetch_array,但仔细检查后发现,据我所知,暗示使用了一个查询来查看是否有可能从主查询返回的任何记录。下面重写的代码尚未经过测试-我没有办法这样做-并且只有一个查询,但确实尝试遍历循环。

如果出于某种原因需要记录数,我将 count 作为子查询包含在主查询中 - 但我不认为是这样。

<?php

    include 'Connection2.php';

    $result=array();

    $sql = "select 
            ( select count(*) from `mstFinancialyear` ) as `counter`,
            `FYearID`, 
            `Description`,
            `FromDate`,
            `ToDate` 
        from 
        `mstFinancialyear`";

    $stmt = odbc_exec( $conn, $sql );

    $rows = odbc_num_rows( $conn );
    /* odbc_num_rows() after a SELECT will return -1 with many drivers!! */


    /* assume success as `odbc_num_rows` cannot be relied upon */
    if( !empty( $stmt ) ) 

        $result["success"] = $rows > 0 ? 1 : 0;
        $result["year"] = array();

        /* loop through the recordset, add new record to `$result` for each row/year */
        while( $row=odbc_fetch_array( $stmt ) ) 

            $year = array();
            $year['FYearID'] = $row['FYearID'];
            $year['Description'] = $row['Description'];
            $year['FromDate'] = $row['FromDate'];
            $year['ToDate'] = $row['ToDate'];

            $result["year"][] = $year;

        
        odbc_close( $conn );
    

    $json=json_encode( $result );
    echo $json;
?>

【讨论】:

PHP 警告:odbc_num_rows():提供的资源不是第 18 行 C:\Project\Year2.php 中的有效 ODBC 结果资源 啊 - 认为应该是$rows = odbc_num_rows( $stmt );

如何一次删除所有 ms-access 表中的数据?

...办法一次性删除所有表中的数据。我们在access中运行一个数据库,每个月保存数据,然后删除access中的所有数据。但它需要从很多表中删除数据。难道没有更简单/更容易的方法吗?【问题讨论】:你也可以使用便宜 查看详情

Unix 中 PHP 中的 MS Access 怎么办?

...页面不需要是动态的或交互式的。他们只需要呈现存储在数据库中的数据。本地开发环境:Windows7、IIS7.5在线服务器:A2Hosting、Linu 查看详情

MS Access - 无法从 RunMacro 运行模块中的子程序

...发布时间】:2017-02-2520:01:31【问题描述】:我的Access2013数据库中有几个模块,其中包括公共子和函数。但是,它们不会出现在RunMacro列表中,如果我使用RunMacro或RunCode命令构建宏,我将无法调用它们。我有允许所有宏的安全设置... 查看详情

将数据从 MS Access 表单保存到同一个 MS Access 数据库中的另一个表?

】将数据从MSAccess表单保存到同一个MSAccess数据库中的另一个表?【英文标题】:SavedatafromMSAccessformtoanothertableinthesameMSAccessdatabase?【发布时间】:2014-06-3003:03:19【问题描述】:我需要有关如何将数据从MSAccess表单保存到同一MSAccess... 查看详情

php 64 位 SQL 状态 IM002 错误中的 MS Access DB

...:2014-02-2413:01:11【问题描述】:我正在尝试从php中的访问数据库中获取数据。代码适用于32位php(我在php版本>5中测试过),但代码会为64位phpwamp生成错误。错误信息:Warning:odbc_connect():SQLerror:[Mi 查看详情

从 JAVA 访问存储在 MS-Access 数据库中的日期/时间数据

】从JAVA访问存储在MS-Access数据库中的日期/时间数据【英文标题】:AccessingDate/TimeDatastoredinMS-AccessDatabasefromJAVA【发布时间】:2013-08-2209:33:41【问题描述】:我正在为我的应用程序使用MS-Access数据库。现在我想从JAVA将当前日期存... 查看详情

从 VBA 代码中转储 MS Access 宏对象信息

...:我有一个项目,我需要在其中比较不同版本的Access2003数据库。我们对表格中的数据不感兴趣。我们只对描述数据库的对象感兴趣。IE。表单对象、报表对象、QueryDefs、TableDefs等。数据库相当大,因此方法是将感兴趣对象的所有... 查看详情

从 MS Access 中删除所有记录

】从MSAccess中删除所有记录【英文标题】:DeleteallrecordsfromMSAccess【发布时间】:2014-03-0806:27:51【问题描述】:我正在使用ms访问,其中1列名称为TIME作为日期/时间类型,格式为dd/mm/yyyhh:nn:ss例如时间2014年6月3日23:43:24现在使用vb.net... 查看详情

C# Ms-access 从数据库中获取详细信息

】C#Ms-access从数据库中获取详细信息【英文标题】:C#Ms-accessGettingdetailsfromdatabase【发布时间】:2015-07-2414:32:01【问题描述】:我使用SQL、OLEDB提供程序创建了一个登录表单,它会提示用户输入名称和密码,如果两者都与MicrosoftAcce... 查看详情

从 MS-Access 中联合选择查询中的 SQLite 语法错误

...】:2011-11-3016:37:37【问题描述】:在一个全新的MSAccess2010数据库中,我使用ODBC连接从SQLite数据库链接到两个表。我有以下联合查询:SELECTCalibration_Header.Gage_IDFROMCalibrati 查看详情

使用 MSSQL Server 从 MS ACCESS 数据库中选择数据记录

】使用MSSQLServer从MSACCESS数据库中选择数据记录【英文标题】:SELECTdatarecordsfromMSACCESSdatabaseusingMSSQLServer【发布时间】:2015-12-2207:25:37【问题描述】:我已经成功地从另一个工作站创建了一个链接,我可以查看MSACCESS数据库中的所... 查看详情

在 PHP 中限制 MS Access 中的查询

...06-1509:49:36【问题描述】:我正在重写一个使用MSAccess作为数据库的应用程序。我能够连接表并从表中获取数据,但是如何应用限制和偏移量,例如SELECT*FROMtablenameLIMIT100?【问题讨论】:【参考方案1】:SELECTTOP10*FROM表名Similarthrea... 查看详情

从 MS Access 中的 ODBC 连接中提取 UID

...其中的表链接到SQLServer。我使用文件DSN链接表,打开Access数据库后,用户必须输入SQL服务器用户ID和密码。有没有办法从已建立的ODBC连接中提取该用户ID(不是密码),例如用于显示和审 查看详情

如何从同一数据库的 VBA 代码中的 MS ACCESS 中提取字段

】如何从同一数据库的VBA代码中的MSACCESS中提取字段【英文标题】:HowtopullafieldfromMSACCESSintheVBACodeinthesameDB【发布时间】:2013-02-1208:38:04【问题描述】:我在MSACCESS中有一个数据库,其中我有一个包含一些计数的ECount字段有什么办... 查看详情

如何从 MS access 2007 中的特定表中选择索引

...放入viusalbasic的数据表中,并且iam使用oledb连接到2002-2003数据库格式(.mdb)喜欢,Dimconasnewoledb.oledbconnectionDim 查看详情

如何从 MS ACCESS 数据库中的特定行和列中获取值?

】如何从MSACCESS数据库中的特定行和列中获取值?【英文标题】:HowtogetvaluefromaspecificrowandcolumninMSACCESSdatabase?【发布时间】:2016-04-1314:52:13【问题描述】:首先,我没有唯一值来直接指出我想要检索的值,所以我不能使用WHERE语... 查看详情

从 MS Access 中的表单调用公共子

...我读过这篇文章:HowdoIcallaVBAFunctionintoaSubProcedure并尝试了所有建议的方法,但没有一个 查看详情

从 MS Access 访问 .mdb 文件中的后端表

...1-1320:09:37【问题描述】:我的组织使用用户友好的捐助者数据库软件,该软件将其数据存储在安装文件夹中的.mdb表中。该程序本身使用一种我不熟悉的专有查询方法。我对SQL有点熟悉,想访问软件外部的表以使用SQL进行查询。... 查看详情