検索
ホームページデータベースmysql チュートリアルmysqlテーブルの基本操作まとめ(3)_MySQL

mysqlテーブルの基本操作、詳細は以下の通りです

1. テーブルを作成します:
テーブルを作成するための構文形式:

リーリー

例:

リーリー

注: テーブルを作成する前に、通常は USE ライブラリ名を使用する必要があります。このようなステートメントはライブラリを選択し、選択したライブラリにテーブルを作成します。テーブル名識別子の場合、CREATE、USE などの mysql キーワードを使用することはできません。テーブル名識別子は t_xxx または tab_xxx にすることをお勧めします。各属性はカンマで区切られ、その後にカンマを使用する必要はありません。最後の属性。

2. テーブル構造を表示します:
2.1 テーブルの定義を表示する DESCRIBE ステートメント
USE ライブラリ名 // ライブラリを選択します
DESCRIBE テーブル名; //テーブルの定義情報を表示します。DESCRIBE は DESC に置き換えることができます
2.2 テーブルの詳細な定義を表示するための SHOW CREATE TABLE ステートメント
USE ライブラリ名 // ライブラリを選択します
SHOW CREATE TABLE テーブル名 G テーブル名 //テーブル定義情報を表示
備考: テーブルの詳細な定義情報を表示する場合、末尾に「;」「g」「G」記号を使用すると、結果をより美しく表示し、見やすくすることができます。最後まで。

3. テーブルを削除します:
テーブルを削除する構文形式:
USE ライブラリ名 // ライブラリを選択します
DROP TABLE テーブル名; // 指定したテーブル名のテーブルを削除します

4. テーブルを変更します:
4.1 テーブル名の変更
作成されたテーブルは、一定期間使用した後、いくつかの構造の変更、つまりテーブルの変更操作が必要になります。テーブルを直接削除して、新しいテーブル定義に従ってテーブルを作成してみてはいかがでしょうか?その理由は、テーブルにすでに大量のデータが存在する場合、データの再ロードなど、再構築後に多くの追加作業が必要になるためです。上記の問題を解決するために、mysql はテーブル構造を変更する ALTER TABLE ステートメントを提供します。
テーブル名の構文を変更します: ALTER TABLE old_table_name REANME [TO] new_table_name
4.2 フィールドを追加する
4.2.1 テーブルの最後の位置にフィールドを追加します
構文は次のとおりです。 ALTER TABLE table_name ADD 属性名 属性タイプ
4.2.2 テーブルの最初の位置にフィールドを追加します
構文は次のとおりです。 ALTER TABLE table_name ADD 属性名 属性タイプ FIRST; 4.2.3 テーブル内の指定されたフィールドの後にフィールドを追加します
構文は次のとおりです。 ALTER TABLE table_name ADD 属性名 属性タイプ AFTER 属性名

4.3 フィールドの削除
フィールドを削除するための構文: ALTER TABLE table_name DROP 属性名

4.4 フィールドの変更 (データ型と順序の変更は MODIFY である必要があり、名前または名前と属性の変更は CHANGE である必要があります)
4.4.1 フィールドのデータ型を変更する
構文は次のとおりです: ALTER TABLE table_name MODIFY 属性名 データ型 // データ型は変更されたデータ型です
4.4.2 フィールドの名前を変更します
構文は次のとおりです: ALTER TABLE table_name CHANGE 古い属性名 新しい属性名 古いデータ型
4.4.3 フィールドの名前と属性を同時に変更する
構文は次のとおりです: ALTER TABLE table_name CHANGE 古い属性名 新しい属性名 新しいデータ型
4.4.4 フィールドの順序を変更する
構文は次のとおりです。 ALTER TABLE table_name MODIFY 属性名 1 データ型 FIRTST | 属性名 2; //「属性名 1」パラメータは順番に調整されるフィールド名を示し、「FITST」パラメータはフィールドをテーブルの最初の位置に調整することを示し、「AFTER 属性名 2」パラメータはフィールドを属性の後の位置に調整することを示します名前2フィールド。

5.操作表的约束:
5.1 MySQL支持的完整性约束 
    所谓完整性是指数据的准确性和一致性,而完整性检查是指检查数据的准确性和一致性。MySQL提供了一种机制来检查数据库表中的数据是否满足规定的条件,以保证数据库中数据的准确性和一致性,这种机制就是约束。MySQL除了支持标准SQL的完整性约束外,还扩展增加了AUTO_INCREMENT约束。
    1. NOT NULL //约束字段的值不能为空
    2. DEFAULT //设置字段的默认值
    3. UNIQUE KEY(UK) //约束字段的值是唯一
    4. PRIMARY KEY(PK) //约束字段为表的主键,可以作为该表记录的唯一标识
    5. AUTO_INCREMENT //约束字段的值为自动增长
5.2 设置非空约束(NOT NULL, NK) 
    在创建数据库表时,为某些字段加上”NOT NULL”约束条件,保证所有记录中的该字段都是有值的。 设置非空约束的语法形式为: 

 CREATE TABLE table_name ( 
  属性名 数据类型 NOT NULL, 
 ); 

5.3 设置字段的默认值(DEFAULT) 
    当为数据库表中插入一条新记录时,如果没有为某个字段赋值,那么数据库系统会自动为这个字段插入默认值。设置数据库表中某个字段的默认值语法形式为: 

 CREATE TABLE table_name ( 
  属性名 数据类型 DEFAULT 默认值, 
 );

5.4 设置唯一约束(UNIQUE, UK) 
    当数据库表中的某个字段上的内容不允许重复时,则可以使用UK约束进行设置。即UK约束在创建数据库表时为某些字段加上”UNIQUE”约束条件,保证所有记录中该字段上的值不重复。
    设置唯一约束语法形式为:

CREATE TABLE table_name(
 属性名 数据类型 UNIQUE,
);

例如:

CREATE TABLE t_dept(
 deptno INT ,
 dname VARCHAR(20) UNIQUE,
 loc VARCHAR(40) 
);

    如果想给字段dname上的UK约束设置一个名字,可以执行SQL语句CONSTRAINT,示例如下:

CREATE TABLE t_dept(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT uk_dname UNIQUE(dname)
);
//在为约束设标识符时,推荐使用“约束缩写_字段名",因此设置为uk_dname;

5.5 设置主键约束(PRIMARY KEY , PK) 
    当想用数据库表中的某个字段来唯一标识所有记录时,则可以使用PK约束进行设置。在数据库表中之所以设置主键,是为了便于快速的查找到表中的记录。在具体设置主键约束时,必须要满足主键字段的值是唯一、非空的。主键可以使单一字段,也可以是多个字段,因此分为单字段主键和多字段主键。主键约束相当于 非空约束 加上 唯一约束。
    5.5.1 单字段主键
    设置PK约束,语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 PRIMARY KEY,
);

    如果想给字段deptno上的PK约束设置一个名字,可以使用CONSTRAINT,示例如下:

CREATE TABLE table_name(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT pk_deptno PRIMARY KEY(deptno)
);

    5.5.2 多字段主键
    当主键有多个字段组合而成时,则需要通过SQL语句CONSTRAINT来实现,其语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 ......
 [CONSTRAINT 约束名]PRIMARY KEY (属性名,属性名......)
);

5.6 设置字段值自动增加(AUTO_INCREMENT) 
    AUTO_INCREMENT 是MySQL唯一扩展的唯一性约束,当为数据库表中插入新记录时,字段上的值会生成唯一的ID,在数据库表中只能有一个字段使用该约束,该字段的数据类型必须是整数类型,由于设置自增长字段会生成唯一的ID,所以该字段也经常设置成PK主键。
    设置自增长语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 AUTO_INCREMENT, //默认字段的值是从1开始增加,每增加一条在前一条的基础上加1
 deptno INT PRIMARY KEY AUTO_INCREMENT, //通常都会和PK一起写
);

5.7 设置外键约束(FOREIGN KEY ,FK) 
    前面的完整性约束都是在单表中进行设置,而外键约束通常保证两个表之间的参照完整性,即构建于两个表的两个字段之间的参照关系。在具体设置FK约束时,设置FK约束的字段必须依赖于数据库中已经存在的”一”(一对多中的一)的一方的主键,同时外键可以设置为null。
    设置FK约束的语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 属性名 数据类型,
 [CONSTRAINT 外键约束名] FOREIGN KEY (属性名1) REFERENCES 表名 (属性名2)
//备注:"外键约束名"用来标识约束名,"属性名1"参数是"多"的一方表中设置外键的字段名,"属性2"中,参数是"一"的一方设置主键约束的字段名。
)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Innodb Redoログの役割を説明し、ログを元に戻します。Innodb Redoログの役割を説明し、ログを元に戻します。Apr 15, 2025 am 12:16 AM

INNODBは、レドログと非論的なものを使用して、データの一貫性と信頼性を確保しています。 1.レドログは、クラッシュの回復とトランザクションの持続性を確保するために、データページの変更を記録します。 2.Undologsは、元のデータ値を記録し、トランザクションロールバックとMVCCをサポートします。

説明出力(タイプ、キー、行、追加)で探す重要なメトリックは何ですか?説明出力(タイプ、キー、行、追加)で探す重要なメトリックは何ですか?Apr 15, 2025 am 12:15 AM

説明コマンドのキーメトリックには、タイプ、キー、行、および追加が含まれます。 1)タイプは、クエリのアクセスタイプを反映しています。値が高いほど、constなどの効率が高くなります。 2)キーは使用されているインデックスを表示し、nullはインデックスがないことを示します。 3)行はスキャンされた行の数を推定し、クエリのパフォーマンスに影響します。 4)追加の情報を最適化する必要があるというFilesortプロンプトを使用するなど、追加情報を提供します。

説明の一時的なステータスを使用し、それを回避する方法は何ですか?説明の一時的なステータスを使用し、それを回避する方法は何ですか?Apr 15, 2025 am 12:14 AM

Temporaryを使用すると、MySQLクエリに一時テーブルを作成する必要があることが示されています。これは、異なる列、またはインデックスされていない列を使用して順番に一般的に見られます。インデックスの発生を回避し、クエリを書き直し、クエリのパフォーマンスを改善できます。具体的には、expliect出力に使用を使用する場合、MySQLがクエリを処理するために一時テーブルを作成する必要があることを意味します。これは通常、次の場合に発生します。1)個別またはグループビーを使用する場合の重複排除またはグループ化。 2)Orderbyに非インデックス列が含まれているときに並べ替えます。 3)複雑なサブクエリを使用するか、操作に参加します。最適化方法には以下が含まれます。1)OrderbyとGroupB

さまざまなSQLトランザクションの分離レベル(読み取り、commited、繰り返し読み取り、シリアル化可能、シリアル化可能)とmysql/innodbの意味を説明してください。さまざまなSQLトランザクションの分離レベル(読み取り、commited、繰り返し読み取り、シリアル化可能、シリアル化可能)とmysql/innodbの意味を説明してください。Apr 15, 2025 am 12:11 AM

MySQL/INNODBは、4つのトランザクション分離レベルをサポートしています。 1.ReadunCommittedは、知らないデータを読み取ることができます。 2。読み込みは汚い読み取りを回避しますが、繰り返しのない読みが発生する可能性があります。 3. RepeatablerEadはデフォルトレベルであり、汚い読み取りと非回復不可能な読みを避けますが、幻の読み取りが発生する可能性があります。 4. Serializableはすべての並行性の問題を回避しますが、同時性を低下させます。適切な分離レベルを選択するには、データの一貫性とパフォーマンス要件のバランスをとる必要があります。

MySQL対その他のデータベース:オプションの比較MySQL対その他のデータベース:オプションの比較Apr 15, 2025 am 12:08 AM

MySQLは、Webアプリケーションやコンテンツ管理システムに適しており、オープンソース、高性能、使いやすさに人気があります。 1)PostgreSQLと比較して、MySQLは簡単なクエリと高い同時読み取り操作でパフォーマンスが向上します。 2)Oracleと比較して、MySQLは、オープンソースと低コストのため、中小企業の間でより一般的です。 3)Microsoft SQL Serverと比較して、MySQLはクロスプラットフォームアプリケーションにより適しています。 4)MongoDBとは異なり、MySQLは構造化されたデータおよびトランザクション処理により適しています。

MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか?MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか?Apr 14, 2025 am 12:18 AM

MySQLインデックスのカーディナリティは、クエリパフォーマンスに大きな影響を及ぼします。1。高いカーディナリティインデックスは、データ範囲をより効果的に狭め、クエリ効率を向上させることができます。 2。低カーディナリティインデックスは、完全なテーブルスキャンにつながり、クエリのパフォーマンスを削減する可能性があります。 3。ジョイントインデックスでは、クエリを最適化するために、高いカーディナリティシーケンスを前に配置する必要があります。

MySQL:新規ユーザー向けのリソースとチュートリアルMySQL:新規ユーザー向けのリソースとチュートリアルApr 14, 2025 am 12:16 AM

MySQL学習パスには、基本的な知識、コアの概念、使用例、最適化手法が含まれます。 1)テーブル、行、列、SQLクエリなどの基本概念を理解します。 2)MySQLの定義、作業原則、および利点を学びます。 3)インデックスやストアドプロシージャなどの基本的なCRUD操作と高度な使用法をマスターします。 4)インデックスの合理的な使用や最適化クエリなど、一般的なエラーのデバッグとパフォーマンス最適化の提案に精通しています。これらの手順を通じて、MySQLの使用と最適化を完全に把握できます。

実際のmysql:例とユースケース実際のmysql:例とユースケースApr 14, 2025 am 12:15 AM

MySQLの実際のアプリケーションには、基本的なデータベース設計と複雑なクエリの最適化が含まれます。 1)基本的な使用法:ユーザー情報の挿入、クエリ、更新、削除など、ユーザーデータの保存と管理に使用されます。 2)高度な使用法:eコマースプラットフォームの注文や在庫管理など、複雑なビジネスロジックを処理します。 3)パフォーマンスの最適化:インデックス、パーティションテーブル、クエリキャッシュを使用して合理的にパフォーマンスを向上させます。

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 中国語版

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

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

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

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。