検索
ホームページバックエンド開発PHPチュートリアルPHP データベース ファイルの使用方法をすぐに学ぶ_PHP チュートリアル
PHP データベース ファイルの使用方法をすぐに学ぶ_PHP チュートリアルJul 15, 2016 pm 01:28 PM
php一度使用勉強速いデータベース書類比較する使用研究まだ

PHP はまだ比較的一般的に使用されているため、PHP データベース ファイルを研究し、ここで皆さんに共有したいと思います。各テーブルが別個のデータベースにあるアプリケーションを見てみましょう。これは非常に大規模なデータベースでは妥当ですが、一般的なアプリケーションではこのレベルのパーティショニングは必要ありません。さらに、データベース間でリレーショナル クエリを実行することはできません。これにより、複数のデータベース間でテーブルを管理することがより困難になることは言うまでもなく、リレーショナル データベースを使用するという概念自体が失われてしまいます。 では、複数のデータベースはどのようにあるべきでしょうか?まず、いくつかのデータが必要です。リスト 1 は、このようなデータが 4 つのファイルに分割されていることを示しています。

リスト 1. PHP データベース ファイル

<ol class="dp-xml">
<li class="alt"><span><span>Files.sql:  </span></span></li>
<li class=""><span>CREATE TABLE files (  </span></li>
<li class="alt"><span>id MEDIUMINT,  </span></li>
<li class=""><span>user_id MEDIUMINT,  </span></li>
<li class="alt"><span>name TEXT,  </span></li>
<li class=""><span>path TEXT  </span></li>
<li class="alt"><span>);  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>Load_files.sql:  </span></li>
<li class=""><span>INSERT INTO files VALUES ( 1, 1, 'test1.jpg', 'files/test1.jpg' );  </span></li>
<li class="alt"><span>INSERT INTO files VALUES ( 2, 1, 'test2.jpg', 'files/test2.jpg' );  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>Users.sql:  </span></li>
<li class=""><span>DROP TABLE IF EXISTS users;  </span></li>
<li class="alt"><span>CREATE TABLE users (  </span></li>
<li class=""><span>id MEDIUMINT,  </span></li>
<li class="alt"><span>login TEXT,  </span></li>
<li class=""><span>password TEXT  </span></li>
<li class="alt"><span>);  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>Load_users.sql:  </span></li>
<li class=""><span>INSERT INTO users VALUES ( 1, 'jack', 'pass' );  </span></li>
<li class="alt"><span>INSERT INTO users VALUES ( 2, 'jon', 'pass' );  </span></li>
</ol>

データベース設計、データベース アクセス、データベース ベースの PHP ビジネス ロジック コードはさまざまな方法で作成できますが、通常はエラーが発生し、これらの問題が発生すると、それらを修正する方法。これらのファイルのマルチデータベース バージョンでは、SQL ステートメントを 1 つのデータベースにロードしてから、ユーザーの SQL ステートメントを別のデータベースにロードする必要があります。特定のユーザーに関連付けられたファイルをデータベースにクエリするための PHP コードを以下に示します。 get_user 関数は、users テーブルを含むデータベースに接続し、特定のユーザーの ID を取得します。 get_files 関数は、files テーブルに接続し、特定のユーザーに関連付けられたファイル行を取得します。これらすべてを行うためのより良い方法は、データをデータベースにロードしてから、以下のようなクエリを実行することです。

リスト 2. PHP データベース ファイル Getfiles.php

<ol class="dp-xml">
<li class="alt"><span><span><?php  </span></span></li>
<li class=""><span>require_once("DB.php");  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>function get_user( $name )  </span></li>
<li class="alt"><span>{  </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">dsn</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">'mysql://root:password@localhost/bad_multi1'</font></span><span>;  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">db</font></span><span> =& DB::Connect( $dsn, array() );  </span>
</li>
<li class=""><span>if (PEAR::isError($db)) { die($db->getMessage()); }  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">res</font></span><span> = $db->query( "SELECT id FROM users WHERE </span><span class="attribute"><font color="#ff0000">login</font></span><span>=?",array( $name ) );  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">uid</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">null</font></span><span>;  </span>
</li>
<li class="">
<span>while( $res->fetchInto( $row ) ) { $</span><span class="attribute"><font color="#ff0000">uid</font></span><span> = $row[0]; }  </span>
</li>
<li class="alt"><span> </span></li>
<li class=""><span>return $uid;  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>function get_files( $name )  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">uid</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">get_user</font></span><span>( $name );  </span>
</li>
<li class=""><span> </span></li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">rows</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>();  </span>
</li>
<li class=""><span> </span></li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">dsn</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">'mysql://root:password@localhost/bad_multi2'</font></span><span>;  </span>
</li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">db</font></span><span> =& DB::Connect( $dsn, array() );  </span>
</li>
<li class="alt"><span>if (PEAR::isError($db)) { die($db->getMessage()); }  </span></li>
<li class=""><span> </span></li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">res</font></span><span> = $db->query( "SELECT * FROM files WHERE </span><span class="attribute"><font color="#ff0000">user_id</font></span><span>=?",array( $uid ) );  </span>
</li>
<li class=""><span>while( $res->fetchInto( $row ) ) { $rows[] = $row; }  </span></li>
<li class="alt"><span>return $rows;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">files</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">get_files</font></span><span>( 'jack' );  </span>
</li>
<li class="alt"><span> </span></li>
<li class=""><span>var_dump( $files );  </span></li>
<li class="alt"><span>?>  </span></li>
</ol>

リスト 3. Getfiles_good.php

<ol class="dp-xml">
<li class="alt"><span><span><?php  </span></span></li>
<li class=""><span>require_once("DB.php");  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>function get_files( $name )  </span></li>
<li class="alt"><span>{  </span></li>
<li class="">
<span>$</span><span class="attribute">rows</span><span> = </span><span class="attribute-value">array</span><span>();  </span>
</li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">dsn</span><span> = </span><span class="attribute-value">'mysql://root:password@localhost/good_multi'</span><span>;  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">db</span><span> =& DB::Connect( $dsn, array() );  </span>
</li>
<li class=""><span>if (PEAR::isError($db)) { die($db->getMessage()); }  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">res</span><span> = $db->query("SELECT files.* FROM users, files WHERE  </span>
</li>
<li class="alt">
<span></span><span class="attribute">users.login</span><span>=? AND </span><span class="attribute">users.id</span><span>=</span><span class="attribute-value">files</span><span>.user_id",  </span>
</li>
<li class=""><span>array( $name ) );  </span></li>
<li class="alt"><span>while( $res->fetchInto( $row ) ) { $rows[] = $row; }  </span></li>
<li class=""><span> </span></li>
<li class="alt"><span>return $rows;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">files</span><span> = </span><span class="attribute-value">get_files</span><span>( 'jack' );  </span>
</li>
<li class="alt"><span> </span></li>
<li class=""><span>var_dump( $files );  </span></li>
<li class="alt"><span>?>  </span></li>
</ol>

このコードは短いだけでなく、理解しやすく効率的です。 2 つのクエリを実行する代わりに、1 つのクエリを実行します。この質問は突飛に聞こえるかもしれませんが、実際には、よほどの理由がない限り、すべてのテーブルは同じデータベース内にあるべきであると通常結論付けられます。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446457.html技術記事 PHP はまだ比較的一般的に使用されているため、PHP データベース ファイルを研究し、ここで共有しました。皆さんのお役に立てれば幸いです。それぞれのアプリを見てみましょう...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
理解SpringBoot和SpringMVC之间的差异及比较理解SpringBoot和SpringMVC之间的差异及比较Dec 29, 2023 am 09:20 AM

对比SpringBoot与SpringMVC,了解它们的差异随着Java开发的不断发展,Spring框架已经成为了许多开发人员和企业的首选。在Spring的生态系统中,SpringBoot和SpringMVC是两个非常重要的组件。虽然它们都是基于Spring框架的,但在功能和使用方式上却有一些区别。本文将重点对比一下SpringBoot与Sprin

WordPress 网站搭建指南:快速搭建个人网站WordPress 网站搭建指南:快速搭建个人网站Mar 04, 2024 pm 04:39 PM

WordPress网站搭建指南:快速搭建个人网站随着数字化时代的到来,拥有一个个人网站已经成为了一种时尚和必要。而WordPress作为最受欢迎的网站搭建工具,让搭建个人网站变得更加容易和便捷。本文将为大家提供一个快速搭建个人网站的指南,包含具体的代码示例,希望可以帮助到想要拥有自己网站的朋友们。第一步:购买域名和主机在开始搭建个人网站之前,首先要购买自己

Vue3中的生命周期函数:快速掌握Vue3的生命周期Vue3中的生命周期函数:快速掌握Vue3的生命周期Jun 18, 2023 am 08:20 AM

Vue3是目前前端界最热门的框架之一,而Vue3的生命周期函数是Vue3中非常重要的一部分。Vue3的生命周期函数可以让我们实现在特定的时机触发特定的事件,增强了组件的高度可控性。本文将从Vue3的生命周期函数的基本概念、各个生命周期函数的作用和使用方法以及实现案例等方面进行详细探究和讲解,帮助读者快速掌握Vue3的生命周期函数。一、Vue3的生命周期函数的

win10电脑怎么快速切屏win10电脑怎么快速切屏Jul 10, 2023 am 08:21 AM

电脑怎么切屏?在使用电脑的时候,有的朋友会使用两个甚至三个显示屏,但是在使用的时候,就会遇到需要切换屏幕的问题,那么电脑怎么切屏呢?一些朋友不知道电脑快速切屏方法,所以本期将教大家win10电脑怎么快速切屏。win10电脑怎么快速切屏?具体的方法如下:1、外接显示屏以后,同时按下【Fn】+【F4】或者【win】+【P】即可选择外接显示器。2、第二种方法是,在桌面空白处鼠标右键,然后选择【屏幕分辨率】。3、然后在【多显示器】中,就能够切换屏幕了。以上就是小编带来的win10电脑怎么快速切屏的全部内

分享PyCharm中快速注释代码的技巧,提高工作效率分享PyCharm中快速注释代码的技巧,提高工作效率Jan 04, 2024 pm 12:02 PM

效率提升!PyCharm中快速注释代码的方法分享在日常的软件开发工作中,我们经常需要注释掉一部分代码进行调试或者调整。如果手动逐行添加注释,这无疑会增加我们的工作量和耗费时间。而PyCharm作为一款强大的Python集成开发环境,提供了快速注释代码的功能,大大提升了我们的开发效率。本文将分享一些在PyCharm中快速注释代码的方法,并提供具体的代码示例。单

win7如何快速截屏win7如何快速截屏Jun 29, 2023 am 11:19 AM

win7如何快速截屏?win7系统之中有着很多便捷操作功能,可以为各位提供非常多样化的便捷服务。很多win7系统的用户在使用电脑的过程中,想要通过win7系统之中的快捷键进行截屏,但是却不清楚具体的快捷键是哪些,因此无法正常使用,那么,这些快捷截屏键究竟是哪些呢?下面小编就为各位带来win7快速截屏键介绍。win7快速截屏键介绍1、按Prtsc键截图这样获取的是整个电脑屏幕的内容,按Prtsc键后,可以直接打开画图工具,接粘贴使用。也可以粘贴在QQ聊天框或者Word文档中,之后再选择保存即可。2

前端开发中sessionStorage的优点及应用案例分析前端开发中sessionStorage的优点及应用案例分析Jan 11, 2024 pm 02:51 PM

sessionStorage在前端开发中的优势与应用案例分析随着Web应用的发展,前端开发的需求也越来越多样化。前端开发人员需要使用各种工具和技术来提高用户体验,其中,sessionStorage是一个非常有用的工具。本文将介绍sessionStorage在前端开发中的优势,以及几个具体的应用案例。sessionStorage是HTML5提供的一种本地存储方

VUE3初学者必备的快速开发入门指南VUE3初学者必备的快速开发入门指南Jun 15, 2023 pm 04:38 PM

VUE3初学者必备的快速开发入门指南Vue是一款流行的JavaScript框架,它的易用性、高度定制性和快速开发模式使得它在前端开发中广受欢迎。而最新的Vue3则推出了更多强大的特性,包括性能优化、TypeScript支持、CompositionAPI以及更好的自定义渲染器等等。本篇文章将为Vue3初学者提供一份快速开发入门指南,帮助你快速上手Vue3开发

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。