MySQL 主キー ID を生成する方法 (自己増分、一意、不規則)

MySQL 主キー ID を生成する方法 (自己増分、一意、不規則)

1. uuid関数を使用して、一意かつ不規則な主キーIDを生成します。

SQL: 構文:

テーブル「test」を作成します(
  `id` varchar(100) COLLATE utf8_estonian_ci NOT NULL COMMENT '一意かつ重複しない',
  `create_time` タイムスタンプ NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `update_time` タイムスタンプ NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP、
  `sex` int(11) デフォルト NULL,
  `name` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `username` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `password` varchar(255) COLLATE utf8_estonian_ci DEFAULT NULL,
  `classes` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `major` int(255) デフォルト NULL,
  `QQ` int(20) デフォルト NULL,
  `introducemyself` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  主キー (`id`)
) ENGINE=InnoDB デフォルト CHARSET=utf8 COLLATE=utf8_estonian_ci ROW_FORMAT=DYNAMIC;

表面:

ステートメントを挿入:

INSERT INTO test(id,sex,name,username,password,classes,major,QQ,introducemyself) VALUE(replace(uuid(), '-', ''),1,"小米","xck","001","班八",265,953190259,"我最牛");

2 回実行され、2 つの異なる ID が生成されます。

2. idの自動成長

タイプを整数に変更し、下の自動増加を選択します

DDL を参照:

テーブル「test」を作成します(
  `id` bigint(100) NOT NULL AUTO_INCREMENT COMMENT '一意かつ重複しない',
  `create_time` タイムスタンプ NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `update_time` タイムスタンプ NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP、
  `sex` int(11) デフォルト NULL,
  `name` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `username` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `password` varchar(255) COLLATE utf8_estonian_ci DEFAULT NULL,
  `classes` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  `major` int(255) デフォルト NULL,
  `QQ` int(20) デフォルト NULL,
  `introducemyself` varchar(255) COLLATE utf8_estonian_ci デフォルト NULL,
  主キー (`id`)
) ENGINE=InnoDB デフォルト CHARSET=utf8 COLLATE=utf8_estonian_ci ROW_FORMAT=DYNAMIC;

データを挿入します。SQL:

INSERT INTO test(性別、名前、ユーザー名、パスワード、クラス、専攻、QQ、自己紹介) VALUE(1,"小米","xck","001","班八",265,953190259,"我最牛");

対応するデータベースの変更:

これで、MySQL 主キー ID (自己増分、一意、不規則) の生成方法についての記事は終了です。MySQL 主キー ID 生成に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • SQL Server データベース (sqlserver、mysql) の主キーを生成する方法の概要

<<:  iframeフレームはIEブラウザで白い背景を透明に設定します

>>:  表 td 画像水平および垂直中央揃えコード

推薦する

WeChatアプレットで画像の幅と高さを取得する方法

起源最近、私は要件 A に取り組んでいます。そこには、次のように記述される小さな機能ポイントがありま...

Redo ログと Undo ログに基づく MySQL クラッシュ回復の分析

目次MySQLクラッシュ回復プロセス1. ブラックボックス下のデータフローを更新する2. やり直しロ...

Linux で Multitail コマンドを使用するチュートリアル

MultiTail は、tail コマンド機能と同様に、複数のドキュメントを同時に監視するために使用...

React 手書きタブ切り替え問題

親ファイル React をインポートし、{useState} を 'react' か...

CocosCreator ユニバーサルフレームワークデザインネットワーク

目次序文Websocketの使用Websocketオブジェクトの構築Websocket ステータスW...

Linux で削除できないファイル/フォルダの解決方法

序文最近、弊社のサーバーがハッカーの攻撃を受け、一部のファイルの属性が変更されたため、ウイルスファイ...

Linux環境変数の設定に関する完全なガイド

Linux環境変数の設定ソフトウェアのインストールをカスタマイズする場合、多くの場合、環境変数を設定...

vue3.2 で追加された defineCustomElement の基本原理の詳細な説明

目次Webコンポーネントカスタム要素概要HTMLTemplateElement コンテンツ テンプレ...

Vueは画像のズームとドラッグをサポートするリッチテキストエディタを統合しています

必要:ビジネス要件によると、写真をアップロードできる必要があり、アップロードされた写真はモバイル端末...

Linux システムの .bash_profile ファイルの詳細な説明

目次1. 環境変数$PATH: 2. 環境変数を変更します。 3. bash_profileの目的要...

MySQL の異常なエラー ERROR: 2002 を解決する方法

最近、MySQL の起動中にエラーが発生しました。エラー メッセージは次のとおりです。 エラー 20...

dns-prefetch とは何ですか? フロントエンドの最適化: DNS の事前解決によりページ速度が向上します

目次背景1. dns-prefetch とは何ですか? 2. dns-prefetch を設定するに...

Linux オペレーティング システムでよく使用される MySQL コマンドの概要

以下に、一般的な MySQL コマンドをいくつか示します。 -- データベース サービスを開始します...

花火効果を実現するJavaScript(オブジェクト指向)

この記事では、花火効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具...

MySQL でテーブル メタデータ ロックを待機する理由と方法

MySQL が alter table などの DDL 操作を実行すると、テーブル メタデータ ロッ...