検索
ホームページデータベース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 サイトの他の関連記事を参照してください。

声明
この記事はCSDNで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
MySQL:初心者が習得するための必須スキルMySQL:初心者が習得するための必須スキルApr 18, 2025 am 12:24 AM

MySQLは、初心者がデータベーススキルを学ぶのに適しています。 1.MySQLサーバーとクライアントツールをインストールします。 2。selectなどの基本的なSQLクエリを理解します。 3。マスターデータ操作:テーブルを作成し、データを挿入、更新、削除します。 4.高度なスキルを学ぶ:サブクエリとウィンドウの関数。 5。デバッグと最適化:構文を確認し、インデックスを使用し、選択*を避け、制限を使用します。

MySQL:構造化データとリレーショナルデータベースMySQL:構造化データとリレーショナルデータベースApr 18, 2025 am 12:22 AM

MySQLは、テーブル構造とSQLクエリを介して構造化されたデータを効率的に管理し、外部キーを介してテーブル間関係を実装します。 1.テーブルを作成するときにデータ形式と入力を定義します。 2。外部キーを使用して、テーブル間の関係を確立します。 3。インデックス作成とクエリの最適化により、パフォーマンスを改善します。 4.データベースを定期的にバックアップおよび監視して、データのセキュリティとパフォーマンスの最適化を確保します。

MySQL:説明されている主要な機能と機能MySQL:説明されている主要な機能と機能Apr 18, 2025 am 12:17 AM

MySQLは、Web開発で広く使用されているオープンソースリレーショナルデータベース管理システムです。その重要な機能には、次のものが含まれます。1。さまざまなシナリオに適したInnodbやMyisamなどの複数のストレージエンジンをサポートします。 2。ロードバランスとデータバックアップを容易にするために、マスタースレーブレプリケーション機能を提供します。 3.クエリの最適化とインデックスの使用により、クエリ効率を改善します。

SQLの目的:MySQLデータベースとの対話SQLの目的:MySQLデータベースとの対話Apr 18, 2025 am 12:12 AM

SQLは、MySQLデータベースと対話して、データの追加、削除、変更、検査、データベース設計を実現するために使用されます。 1)SQLは、ステートメントの選択、挿入、更新、削除を介してデータ操作を実行します。 2)データベースの設計と管理に作成、変更、ドロップステートメントを使用します。 3)複雑なクエリとデータ分析は、ビジネス上の意思決定効率を改善するためにSQLを通じて実装されます。

初心者向けのMySQL:データベース管理を開始します初心者向けのMySQL:データベース管理を開始しますApr 18, 2025 am 12:10 AM

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA

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

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

MySQL:最初のデータベースを構築しますMySQL:最初のデータベースを構築しますApr 17, 2025 am 12:22 AM

MySQLデータベースを構築する手順には次のものがあります。1。データベースとテーブルの作成、2。データの挿入、および3。クエリを実行します。まず、createdAtabaseおよびcreateTableステートメントを使用してデータベースとテーブルを作成し、InsertINTOステートメントを使用してデータを挿入し、最後にSelectステートメントを使用してデータを照会します。

MySQL:データストレージに対する初心者向けのアプローチMySQL:データストレージに対する初心者向けのアプローチApr 17, 2025 am 12:21 AM

MySQLは、使いやすく強力であるため、初心者に適しています。 1.MYSQLはリレーショナルデータベースであり、CRUD操作にSQLを使用します。 2。インストールは簡単で、ルートユーザーのパスワードを構成する必要があります。 3.挿入、更新、削除、および選択してデータ操作を実行します。 4. Orderby、Where and Joinは複雑なクエリに使用できます。 5.デバッグでは、構文をチェックし、説明を使用してクエリを分析する必要があります。 6.最適化の提案には、インデックスの使用、適切なデータ型の選択、優れたプログラミング習慣が含まれます。

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ヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

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

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール