目次
(1)、MySQLのバージョン番号、接続数、データベース名を取得する関数
1.
2 つのレコードをテーブル ワーカーに個別に挿入します:
ホームページ データベース mysql チュートリアル MySQL がシステム情報機能を導入

MySQL がシステム情報機能を導入

Mar 04, 2021 am 09:17 AM
mysql システムメッセージ

MySQL がシステム情報機能を導入

システム情報関数

(1) MySQLのバージョン番号、接続数、データベース名を取得する関数
(2) ユーザー名を取得する関数
(3) 文字列の文字セットとソート方法を取得する関数
(4) 最後に自動生成された ID 値を取得する関数

(関連する無料学習の推奨事項: mysql ビデオチュートリアル)

(1)、MySQLのバージョン番号、接続数、データベース名を取得する関数

1.version()

  • version () は文字列の MySQL Server バージョンの命令を返します。この文字列は utf8 文字セットを使用します。

[例] 現在の MySQL バージョン番号を表示します。SQL ステートメントは次のとおりです:

mysql> select version();+-----------+| version() |+-----------+| 8.0.16    |+-----------+1 row in set (0.05 sec)
ログイン後にコピー

2.connection_id()

  • connection_id()現在の MySQL サーバーの接続数を返します。各接続には独自の一意の ID があります。

[例] 現在のユーザーの接続数を確認する SQL ステートメントは次のとおりです。

mysql> select connection_id();+-----------------+| connection_id() |+-----------------+|              18 |+-----------------+1 row in set (0.05 sec)
ログイン後にコピー

3.show processlist および show full processlist

  • processlist コマンド 出力結果には、実行中のスレッドが表示されます。現在の接続数を表示するだけでなく、問題のあるクエリ ステートメントなどを特定するのに役立つ現在の接続ステータスも表示できます。
  • root アカウントをお持ちの場合は、すべてのユーザーの現在の接続を確認できますが、他の通常のアカウントをお持ちの場合は、自分が占有している接続のみを確認できます。 show processlist では最初の 100 エントリのみがリストされます。すべてをリストするには、show full processlist コマンドを使用します。

【例】showprocesslistコマンドを使用して現在のユーザーの接続情報を出力する SQL文は以下の通りです:

mysql> show processlist;+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+| Id | User            | Host            | db      | Command | Time   | State                  | Info             |+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+|  4 | event_scheduler | localhost       | NULL    | Daemon  | 381487 | Waiting on empty queue | NULL             || 18 | root            | localhost:60272 | company | Query   |      0 | starting               | show processlist |+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+2 rows in set (0.05 sec)
ログイン後にコピー

各列の意味:

##Command 現在の接続の実行コマンドを表示します一般的な値は、sleep、query、connectTimeこの状態の継続時間を表示します。単位は秒です。State 現在の使用状況を表示します。接続された SQL ステートメントの状態です。State は、ステートメントの実行における特定の状態です。情報この SQL 文の表示は、問題文を判断するための重要な文です#4.database() と schema()
意味
id列 「接続ID」ユーザーが MySQL にログインするときにシステムによって割り当てられます
User 現在のユーザーを表示します。root でない場合は、ユーザーの権限内の MySQL ステートメントを表示します
Host このステートメントが発行された IP とポートを表示します。これは、問題のあるステートメントを発行したユーザーを追跡するために使用できます
db このプロセスの現在のステータスを表示します。 どのデータベースが接続されているかを表示します。
[例]現在使用しているデータベースの SQL ステートメントは次のとおりです:

mysql> select database(),schema();+------------+----------+| database() | schema() |+------------+----------+| company    | company  |+------------+----------+1 row in set (0.00 sec)
ログイン後にコピー

(2 )、ユーザー名を取得する関数
user()、current_user()、system_user() session_user() 関数は、MySQL サーバーによって現在検証されているユーザー名とホスト名の組み合わせを返します。この値は、現在ログインしているユーザーのアクセス権を決定する MySQL アカウントに対応します。
  • [例] 現在のログイン ユーザー名を取得する SQL ステートメントは次のとおりです。

戻り結果の値は、現在のアカウントが接続したときのユーザー名を示します。サーバーと接続されたクライアント host 、root は現在ログインしているユーザー名、localhost はログインしているホスト名です。
  • mysql> select user(),current_user,system_user();+----------------+----------------+----------------+| user()         | current_user   | system_user()  |+----------------+----------------+----------------+| root@localhost | root@localhost | root@localhost |+----------------+----------------+----------------+1 row in set (0.05 sec)
    ログイン後にコピー
(3)、文字列の文字セットとソート方法を取得する関数
1.
charset(str)

[例] charset() 関数を使用して、文字列で使用されている文字セットを取得する SQL 文は次のとおりです。

#[例]collat​​ion()関数を使用して文字列の並びを返す SQL文は次のとおりです:

mysql> select charset('abc'),
    -> charset(convert('abc' USING latin1 ) ),
    -> charset(version());+----------------+----------------------------------------+--------------------+| charset('abc') | charset(convert('abc' USING latin1 ) ) | charset(version()) |+----------------+----------------------------------------+--------------------+| gbk            | latin1                                 | utf8               |+----------------+----------------------------------------+--------------------+1 row in set (0.00 sec)
ログイン後にコピー

(4)、最後に自動生成されたID値を取得する関数[例] select last_insetr_id を使用して、最後に自動生成された列の値を確認します 実行プロセスは次のとおりです:

①一度に 1 つのレコードを挿入します

まず、id フィールドを含むテーブル ワーカーを作成しますauto_increment 制約があり、SQL ステートメントは次のとおりです:
mysql> select collation('abc'),collation(convert('abc' USING utf8 ));+------------------+---------------------------------------+| collation('abc') | collation(convert('abc' USING utf8 )) |+------------------+---------------------------------------+| gbk_chinese_ci   | utf8_general_ci                       |+------------------+---------------------------------------+1 row in set, 1 warning (0.05 sec)
ログイン後にコピー
2 つのレコードをテーブル ワーカーに個別に挿入します:
mysql> create table worker    -> (
    -> id int auto_increment not null primary key,
    -> Name varchar(30)
    -> );Query OK, 0 rows affected (0.21 sec)
ログイン後にコピー

挿入されたデータをチェックし、最後に挿入されたデータの id フィールド値を確認します。レコードは 2 です。最後に自動的に生成された ID 値を表示するには、last_insert_id() を使用します。:

mysql> insert into worker values(null,'jimy');Query OK, 1 row affected (0.07 sec)mysql> insert into worker values(null,'Tom');Query OK, 1 row affected (0.05 sec)mysql> select * from worker;+----+------+| id | Name |+----+------+|  1 | jimy ||  2 | Tom  |+----+------+2 rows in set (0.00 sec)
ログイン後にコピー


一度に 1 つのレコードを挿入すると、戻り値が最後の ID 値であることがわかります。挿入されたレコード。

②複数のレコードを一度に挿入

複数のレコードをテーブルに挿入します:

mysql> select last_insert_id();+------------------+| last_insert_id() |+------------------+|                2 |+------------------+1 row in set (0.05 sec)
ログイン後にコピー

last_insert_id を使用して、最後に自動的に生成された ID 値を表示します:

mysql> insert into worker values
    -> (null,'Kevin'),
    -> (null,'Michal'),
    -> (null,'NICK');Query OK, 3 rows affected (0.05 sec)Records: 3  Duplicates: 0  Warnings: 0mysql> SELECT * FROM WORKER;+----+--------+| id | Name   |+----+--------+|  1 | jimy   ||  2 | Tom    ||  3 | Kevin  ||  4 | Michal ||  5 | NICK   |+----+--------+5 rows in set (0.00 sec)
ログイン後にコピー
When insert ステートメントを使用して複数の行を挿入すると、

last_insert_id()

は、データの最初の行が挿入されたときに生成された値のみを返します (ここでは 3 番目のレコードが挿入されています)。その理由は、他のサーバーに依存して同じ挿入ステートメントを複製することが容易になるためです。

ヒント:

last_insert_id はテーブルから独立しています。最初にテーブル a にデータを挿入し、次にテーブル b にデータを挿入します (

last_insert_id##) #テーブル b の ID 値を返します。

  • 関連する無料学習の推奨事項: mysql データベース(ビデオ)

以上がMySQL がシステム情報機能を導入の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

MySQL:世界で最も人気のあるデータベースの紹介 MySQL:世界で最も人気のあるデータベースの紹介 Apr 12, 2025 am 12:18 AM

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

MySQLの場所:データベースとプログラミング MySQLの場所:データベースとプログラミング Apr 13, 2025 am 12:18 AM

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

なぜMySQLを使用するのですか?利点と利点 なぜMySQLを使用するのですか?利点と利点 Apr 12, 2025 am 12:17 AM

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

Apacheのデータベースに接続する方法 Apacheのデータベースに接続する方法 Apr 13, 2025 pm 01:03 PM

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

DockerによるMySQLを開始する方法 DockerによるMySQLを開始する方法 Apr 15, 2025 pm 12:09 PM

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

MySQLの役割:Webアプリケーションのデータベース MySQLの役割:Webアプリケーションのデータベース Apr 17, 2025 am 12:23 AM

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

MySQLをCentos7にインストールする方法 MySQLをCentos7にインストールする方法 Apr 14, 2025 pm 08:30 PM

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

Laravelは紹介例 Laravelは紹介例 Apr 18, 2025 pm 12:45 PM

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

See all articles