search
HomeBackend DevelopmentPHP TutorialData Abstraction Layer-ADODB Getting Started Basics_PHP Tutorial

Data Abstraction Layer-ADODB Getting Started Basics_PHP Tutorial

Jul 13, 2016 pm 05:35 PM
Whatgetting StartedpublishBaseBundleabstractdataarticleOwn

以前总是在水区混啊!没有发表什么文章!这次把自己以前写得文章给大家晒晒!呵呵老鸟不要看了!
ADODB 是 Active Data Objects Data Base 的简称,它是一种PHP存取数据库的中间函式组件。
使用 ADODB 最大的优点之一是:不管后端数据库如何,存取数据库的方式都是一致的,开发设计人员不必为了某一套数据库,而必须再学习另一套不同的存取方法,这大大减轻开发人员的知识负担,过去的知识往后仍可继续使用,转移数据库平台时,程序代码也不必做太大的更动。
这些是以前学习总结的一些例子!
复制PHP内容到剪贴板
PHP代码:
include_once("libs/adodb/adodb.inc.php"); //包含adodb的文件

$db = NewADOConnection("mysql"); //建立哪个数据库的对象

$db->Connect("localhost", "root", "root", "mysql") or die("Unable to connect!"); //链接数据库

$ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; //给全局变量赋值,表示下面可以弄关联数组(我的语言不怎么样)

$query = "SELECT * FROM user";
$result = $db->Execute($query) or die("Error in query: $query. " . $db->ErrorMsg());//(Execute执行SQL)

while (!$result->EOF) {
    echo $result->fields[use] . " - " . $result->fields[pass] . " ";
      $result->MoveNext();//movenext()数组向下移。
}//fields表示字段数组

echo " [" . $result->RecordCount() . " 行记录被返回] ";

$db->Close();//关闭链接
?>


这个例子是ADODB最简单的数据库操作!或者大家可以写个类来操作啊!
在adodb中提供3个函数,GetAll,GetOne,GetRow.
GetAll其实相当于execute,但是返回是2维数组。可以和SMARTY很好的操作。
GetOne,GetRow.是判读数据库的某个数据是否存在!
在ADODB中提供了SelectLimit这个函数!
因为在转移数据库的时候可能有些SQL语句不支持!ADODB用selectlimit来在底层帮我们实现!
例如:
$query = "SELECT * FROM library";
$result = $db->SelectLimit($query, 5, 3);
还有一点是ADODB有缓存机制。
提供了CacheExecute这个。呵呵看下例子吧!
PHP代码:
include("../libs/adodb/adodb.inc.php");

//设置缓存保存的路径,.表示当前目录
$ADODB_CACHE_DIR = tmp;
// 创建一个mysql连接实例对象
$db = NewADOConnection("mysql");

// 打开一个数据库连接
$db->Connect("localhost", "root", "root", "adodb") or die("不能连接");

// 构造并执行一个查询
$query = "SELECT * FROM user";
$result = $db->CacheExecute(300,$query) or die("SQL错误: $query. " . $db->ErrorMsg());//CacheExecute(300,$query)这个方法是300,表示缓存存在的时间。

// 遍历返回的记录集,显示列数据的内容 TITLE 和 AUTHOR
while (!$result->EOF) {
    echo $result->fields[1] . " - " . $result->fields[2] . " ";
      $result->MoveNext();
}

// 取得和显示返回的记录行数
echo " [" . $result->RecordCount() . " 行记录被返回] ";

// 关闭数据库连接
$db->Close();
?>


我感觉最爽的还是有转换方法! rs2html();
PHP代码:



include_once(../libs/adodb/adodb.inc.php);


include_once("../libs/adodb/tohtml.inc.php");

// 创建一个mysql连接实例对象
$db = NewADOConnection("mysql");

// 打开一个数据库连接
$db->Connect("localhost", "root", "root", "user") or die("数据库连接错误");

// 构造并执行一个查询
$query = "SELECT * FROM library";
$result = $db->Execute($query) or die("SQL错误: $query. " . $db->ErrorMsg());

// 返回一个HTML格式的表格
echo rs2html($result);//返回数据在表格里面自己看看吧!

// 关闭数据库连接
$db->Close();
?>

下面介绍几个常用的方法吧!
RecordCount()     取得和显示返回的记录行数
FieldCount()      取得和显示返回的字段个数
Insert_ID()       显示最好插入的ID
Affected_Rows()   显示执行完SQL后的被影响的行数
GetMenu()         生成下拉菜单!
好了只总结这么多啊!其实还有很多知识!
还有很多不足!希望老鸟不要笑话啊!
下次再给大家做补充吧!

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/508317.htmlTechArticleI used to always hang out in the water area! No articles published! This time I will share with you the articles I have written before! Haha, old bird, stop reading! ADODB is a shorthand for Active Data Objects Data Base...
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
How to make PHP applications fasterHow to make PHP applications fasterMay 12, 2025 am 12:12 AM

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

PHP Performance Optimization Checklist: Improve Speed NowPHP Performance Optimization Checklist: Improve Speed NowMay 12, 2025 am 12:07 AM

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

PHP Dependency Injection: Improve Code TestabilityPHP Dependency Injection: Improve Code TestabilityMay 12, 2025 am 12:03 AM

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

PHP Performance Optimization: Database Query OptimizationPHP Performance Optimization: Database Query OptimizationMay 12, 2025 am 12:02 AM

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi

Simple Guide: Sending Email with PHP ScriptSimple Guide: Sending Email with PHP ScriptMay 12, 2025 am 12:02 AM

PHPisusedforsendingemailsduetoitsbuilt-inmail()functionandsupportivelibrarieslikePHPMailerandSwiftMailer.1)Usethemail()functionforbasicemails,butithaslimitations.2)EmployPHPMailerforadvancedfeatureslikeHTMLemailsandattachments.3)Improvedeliverability

PHP Performance: Identifying and Fixing BottlenecksPHP Performance: Identifying and Fixing BottlenecksMay 11, 2025 am 12:13 AM

PHP performance bottlenecks can be solved through the following steps: 1) Use Xdebug or Blackfire for performance analysis to find out the problem; 2) Optimize database queries and use caches, such as APCu; 3) Use efficient functions such as array_filter to optimize array operations; 4) Configure OPcache for bytecode cache; 5) Optimize the front-end, such as reducing HTTP requests and optimizing pictures; 6) Continuously monitor and optimize performance. Through these methods, the performance of PHP applications can be significantly improved.

Dependency Injection for PHP: a quick summaryDependency Injection for PHP: a quick summaryMay 11, 2025 am 12:09 AM

DependencyInjection(DI)inPHPisadesignpatternthatmanagesandreducesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itallowspassingdependencieslikedatabaseconnectionstoclassesasparameters,facilitatingeasiertestingandscalability.

Increase PHP Performance: Caching Strategies & TechniquesIncrease PHP Performance: Caching Strategies & TechniquesMay 11, 2025 am 12:08 AM

CachingimprovesPHPperformancebystoringresultsofcomputationsorqueriesforquickretrieval,reducingserverloadandenhancingresponsetimes.Effectivestrategiesinclude:1)Opcodecaching,whichstorescompiledPHPscriptsinmemorytoskipcompilation;2)DatacachingusingMemc

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version