1. データベースを作成する2. テーブルを作成する1. deptテーブルを作成する テーブル「dept」を作成します( `id` int(11) NULLではない、 `deptno` mediumint(9) デフォルト NULL, `dname` varchar(20) デフォルト NULL, `loc` varchar(13) デフォルト NULL, 主キー (`id`) )ENGINE=InnoDB デフォルト文字セット=utf8; 2. empテーブルを作成する テーブル `emp` を作成します ( `id` int(11) NULLではない、 `empon` mediumint(9) デフォルト NULL コメント 'Number', `ename` varchar(20) デフォルト NULL, `job` varchar(9) デフォルト NULL, `mgr` mediumint(9) デフォルト NULL コメント '上位番号', `hirdate` datetime DEFAULT NULL COMMENT 'ジョブ開始時刻', `sal` 小数点(7,2) デフォルト NULL コメント '給与', `comm` 小数点(7,2) デフォルト NULL コメント '配当', `deptno` mediumint(9) デフォルト NULL コメント '部門番号', 主キー (`id`) )ENGINE=InnoDB デフォルト文字セット=utf8; 3. パラメータを設定する'log_bin_trust_function_creators' のような変数を表示します。 デフォルトではオフです。1 に設定する必要があります。 mediumintフィールド作成関数がテーブルに設定されているため、エラーが発生する可能性があります グローバル log_bin_trust_function_creators=1 を設定します。 4. 関数を作成する1. ランダムな文字列を生成する 区切り文字 $ CREATE FUNCTION RAND_STR(n INT) は VARCHAR(255) を返します。 始める chars_str VARCHAR(100) をデフォルト 'abcdefghijklmnopqrstuvwsyzABCDEFGHIJKLMNOPQRSTUVWXYZ' として宣言します。 return_str VARCHAR(255) DEFAULT '' を宣言します。 i INT DEFAULT 0 を宣言します。 しながら、 return_str = COUCAT(return_str、SUBSTRING(chars_str、FLOOR(1+RAND()*52)、1)); を設定します。 i= i+1 を設定します。 終了しながら; 戻り値 return_str; 終了 $ 2. 部門番号をランダムに生成する 区切り文字 $ CREATE FUNCTION RAND_num() は INT(5) を返します。 始める i INT DEFAULT 0 を宣言します。 i = FLOOR(100+RAND()*10)を設定します。 i を返します。 終了 $ 5. ストアドプロシージャを作成する1. emp テーブル ストアド プロシージャ 区切り文字 $ CREATE PROCEDURE insert_emp(IN START INT(10),IN max_num INT(10)) 始める i INT DEFAULT 0 を宣言します。 自動コミットを 0 に設定します。 繰り返し #繰り返し SET i = i + 1; emp(empon,ename,job,mgr,hiredate,sal,comm,depton) に値 ((START+i),RAND_STR(6),'SALESMAN',0001,CURDATE(),2000,400,RAND_num()); を挿入します。 i = max_numになるまで 繰り返し終了; 専念; 終了 $ 2.deptテーブルのストアドプロシージャ 区切り文字 $ CREATE PROCEDURE insert_dept(IN START INT(10), IN max_num INT(10)) 始める i INT DEFAULT 0 を宣言します。 自動コミットを 0 に設定します。 繰り返し #繰り返し SET i = i + 1; dept(deptno,dname,loc) に値 ((START+i),RAND_STR(10),RAND_STR(8)) を挿入します。 i = max_numになるまで 繰り返し終了; 専念; 終了 $ 6. 実行1. まず10のルールを実行する このエラーは小さな落とし穴です。見つけましたか? 前にも残しました。プロンプトに従って確認してください。 実行に成功しました! 2. データを表示する ハイライトはここ! 賭けてみて、失敗するかどうか見てみましょう。 3. 100万回の挿入を実行する insert_dept(10001,1000000)を呼び出します。 100 万のデータを実行するのに 400 秒かかり、1 秒あたり 2500 です。私の設定が悪すぎます。前回のテストは 1 秒あたり 10,000 で、最高は 1 回の実行あたり 500,000 でした。 オークスリーピング 要約するこれで、Mysql に数千万のデータをすばやく挿入する方法に関するこの記事は終了です。Mysql に数千万のデータを挿入する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
具体的なコードは次のとおりです。 HTMLコードは次のとおりです <div class=&qu...
目次1. コンポーネント切り替え方式方法1: v-ifとv-elseを使用する方法 2: 組み込みコ...
HTML はプレゼンテーションからコンテンツへの移行を試みており、コンテンツの意味(HTML) とプ...
背景トランザクションについて話すとき、誰もがそれに精通している必要があります。MySQL データベー...
まず、VMware 14のアクティベーションコードをお渡ししますFF31K-AHZD1-H8ETZ-...
1. MySQL ダウンロード アドレス。 http://ftp.ntu.edu.tw/MySQL...
いくつかのテーブルまたは単一のデータベースのみをバックアップする場合は、innobackup よりも...
目次メッセージボード必要なライブラリオープンソースプロジェクトプロジェクト構造メッセージボードnod...
導入現在、k8s は非常に人気があり、それについて学ぶために本を購入しました。しかし、k8s では数...
目次1. システム環境2. 運用プロセスと途中で遭遇した問題1. システム環境1. Tencent ...
この記事では、参考のために、WeChatアプレットのチャットルームを実装するための具体的なコードを例...
このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...
1. 事件の背景:仕事上、Ubuntu への vscode リモート接続を使用する必要があります。 ...
この記事の環境はWindows 10、MySQLのバージョンは5.7.12-logです1. 基本的な...
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...