PDO的mysql数据库操作类
pdo的mysql教程数据库教程操作类
* dbconfig类负责配置数据库访问信息,包括:服务器地址、端口、数据库实例名、用户名、用户密码、字符集等。
* dbtemplate类集合了对数据库的访问操作,主要有以下几个操作:
1. queryrows : 返回多行记录
2. queryrow : 返回为单条记录
3. queryforint : 查询单字段,返回整数
4. queryforfloat : 查询单字段,返回浮点数(float)
5. queryfordouble : 查询单字段,返回浮点数(double)
6. queryforobject : 查询单字段,返回对象,实际类型有数据库决定
7. update : 执行一条更新语句. insert / upadate / delete
*/
class dbconfig {
private static $dbms = "mysql";
private static $host = '127.0.0.1';
private static $port = '3306';
private static $username = '';
private static $password = '';
private static $dbname = '';
private static $charset = 'utf-8';
private static $dsn;/**
*
* @return 返回pdo dsn配置
*/
public static function getdsn() {
if (!isset(self::$dsn)) {
self::$dsn = self::$dbms . ':host=' . self::$host . ';port=' .
self::$port . ';dbname=' . self::$dbname;
if (strlen(self::$charset) > 0) {
self::$dsn = self::$dsn . ';charset=' . self::$charset;
}
}
return self::$dsn;
}/**
* 设置mysql数据库服务器主机
* @param $host 主机的ip地址
*/
public static function sethost($host) {
if (isset($host) && strlen($host) > 0)
self::$host = trim($host);
}/**
* 设置mysql数据库服务器的端口
* @param $port 端口
*/
public static function setport($port) {
if (isset($port) && strlen($port) > 0)
self::$port = trim($port);
}/**
* 设置mysql数据库服务器的登陆用户名
* @param $username
*/
public static function setusername($username) {
if (isset($username) && strlen($username) > 0)
self::$username = $username;
}/**
* 设置mysql数据库服务器的登陆密码
* @param $password
*/
public static function setpassword($password) {
if (isset($password) && strlen($password) > 0)
self::$password = $password;
}/**
* 设置mysql数据库服务器的数据库实例名
* @param $dbname 数据库实例名
*/
public static function setdbname($dbname) {
if (isset($dbname) && strlen($dbname) > 0)
self::$dbname = $dbname;
}/**
* 设置数据库编码
* @param $charset
*/
public static function setcharset($charset) {
if (isset($charset) && strlen($charset) > 0)
self::$charset = $charset;
}}
/**
* 一个数据库操作工具类
*
* @author zhjiun@gmail.com
*/
class dbtemplate {/**
* 返回多行记录
* @param $sql
* @param $parameters
* @return 记录数据
*/
public function queryrows($sql, $parameters = null) {
return $this->exequery($sql, $parameters);
}/**
* 返回为单条记录
* @param $sql
* @param $parameters
* @return
*/
public function queryrow($sql, $parameters = null) {
$rs = $this->exequery($sql, $parameters);
if (count($rs) > 0) {
return $rs[0];
} else {
return null;
}
}/**
* 查询单字段,返回整数
* @param $sql
* @param $parameters
* @return
*/
public function queryforint($sql, $parameters = null) {
$rs = $this->exequery($sql, $parameters);
if (count($rs) > 0) {
return intval($rs[0][0]);
} else {
return null;
}
}/**
* 查询单字段,返回浮点数(float)
* @param $sql
* @param $parameters
* @return
*/
public function queryforfloat($sql, $parameters = null) {
$rs = $this->exequery($sql, $parameters);
if (count($rs) > 0) {
return floatval($rs[0][0]);
} else {
return null;
}
}/**
* 查询单字段,返回浮点数(double)
* @param $sql
* @param $parameters
* @return
*/
public function queryfordouble($sql, $parameters = null) {
$rs = $this->exequery($sql, $parameters);
if (count($rs) > 0) {
return doubleval($rs[0][0]);
} else {
return null;
}
}/**
* 查询单字段,返回对象,实际类型有数据库决定
* @param $sql
* @param $parameters
* @return
*/
public function queryforobject($sql, $parameters = null) {
$rs = $this->exequery($sql, $parameters);
if (count($rs) > 0) {
return $rs[0][0];
} else {
return null;
}
}/**
* 执行一条更新语句.insert / upadate / delete
* @param $sql
* @param $parameters
* @return 影响行数
*/
public function update($sql, $parameters = null) {
return $this->exeupdate($sql, $parameters);
}private function getconnection() {
$conn = new pdo(dbconfig::getdsn(), dbconfig::getusername(), dbconfig::getpassword());
$conn->setattribute(pdo::attr_case, pdo::case_upper);
return $conn;
}private function exequery($sql, $parameters = null) {
$conn = $this->getconnection();
$stmt = $conn->prepare($sql);
$stmt->execute($parameters);
$rs = $stmt->fetchall();
$stmt = null;
$conn = null;
return $rs;
}private function exeupdate($sql, $parameters = null) {
$conn = $this->getconnection();
$stmt = $conn->prepare($sql);
$stmt->execute($parameters);
$affectedrows = $stmt->rowcount();
$stmt = null;
$conn = null;
return $affectedrows;
}
}
/*
pdo始于php教程5,php6中将默认使用pdo。不同于以前版本中混乱的数据库操作方式,pdo统一了对数据库的访问方式,给编程带来了极大的便利性。本工具类就是基于pdo,模拟了java世界spring框架中的jdbctemplate操作类
*/

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











MySQLはオープンソースのリレーショナルデータベース管理システムであり、主にデータを迅速かつ確実に保存および取得するために使用されます。その実用的な原則には、クライアントリクエスト、クエリ解像度、クエリの実行、返品結果が含まれます。使用法の例には、テーブルの作成、データの挿入とクエリ、および参加操作などの高度な機能が含まれます。一般的なエラーには、SQL構文、データ型、およびアクセス許可、および最適化の提案には、インデックスの使用、最適化されたクエリ、およびテーブルの分割が含まれます。

データベースとプログラミングにおけるMySQLの位置は非常に重要です。これは、さまざまなアプリケーションシナリオで広く使用されているオープンソースのリレーショナルデータベース管理システムです。 1)MySQLは、効率的なデータストレージ、組織、および検索機能を提供し、Web、モバイル、およびエンタープライズレベルのシステムをサポートします。 2)クライアントサーバーアーキテクチャを使用し、複数のストレージエンジンとインデックスの最適化をサポートします。 3)基本的な使用には、テーブルの作成とデータの挿入が含まれ、高度な使用法にはマルチテーブル結合と複雑なクエリが含まれます。 4)SQL構文エラーやパフォーマンスの問題などのよくある質問は、説明コマンドとスロークエリログを介してデバッグできます。 5)パフォーマンス最適化方法には、インデックスの合理的な使用、最適化されたクエリ、およびキャッシュの使用が含まれます。ベストプラクティスには、トランザクションと準備された星の使用が含まれます

MySQLは、そのパフォーマンス、信頼性、使いやすさ、コミュニティサポートに選択されています。 1.MYSQLは、複数のデータ型と高度なクエリ操作をサポートし、効率的なデータストレージおよび検索機能を提供します。 2.クライアントサーバーアーキテクチャと複数のストレージエンジンを採用して、トランザクションとクエリの最適化をサポートします。 3.使いやすく、さまざまなオペレーティングシステムとプログラミング言語をサポートしています。 4.強力なコミュニティサポートを提供し、豊富なリソースとソリューションを提供します。

Apacheはデータベースに接続するには、次の手順が必要です。データベースドライバーをインストールします。 web.xmlファイルを構成して、接続プールを作成します。 JDBCデータソースを作成し、接続設定を指定します。 JDBC APIを使用して、接続の取得、ステートメントの作成、バインディングパラメーター、クエリまたは更新の実行、結果の処理など、Javaコードのデータベースにアクセスします。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

MySQLをエレガントにインストールするための鍵は、公式のMySQLリポジトリを追加することです。特定の手順は次のとおりです。MYSQLの公式GPGキーをダウンロードして、フィッシング攻撃を防ぎます。 mysqlリポジトリファイルを追加:rpm -uvh https://dev.mysql.com/get/mysql80-community-rease-el7-3.noarch.rpm update yumリポジトリキャッシュ:yumアップデートインストールmysql:yumインストールmysql-server startup mysql sportin
