MySQLのExcelへのエクスポート方法の分析

MySQLのExcelへのエクスポート方法の分析

この記事では、MySQL を使用してデータを Excel にエクスポートする方法について説明します。ご参考までに、詳細は以下の通りです。

MySQL を Excel ファイルにエクスポートするのは非常に簡単です。次のようなコマンドを実行するだけです。

テーブルから * を選択して、出力ファイル 'd:/filename.xls' に格納します。

上記のコマンドをサーバーで実行すると、サーバーの D: ディスクにエクスポートされます。クライアントのコマンドラインモードで実行すると、クライアントの D: ディスクにエクスポートされます。クライアントで POST モードで実行すると、サーバーの D: ディスクにエクスポートされます。インポートを成功させるには、ログイン権限、選択権限、およびファイル権限が必要です。ファイル権限がない場合、select....into outfile や load data infile... などの操作は実行できません。

Excel ファイルとして保存するように求めるボタンを追加するというのは、Web ページ上のことを指しているのでしょうか? MySQL の操作が Web ページ上でブロックされている場合、MySQL は通常、サーバー側のスクリプト言語 (PHP、JSP、ASP など) を介して操作されます。以下では、PHP と JavaScript を例として使用して、データベース クエリ結果を xls として保存します (両方の方法を試しましたが、どちらも実行可能です)。

1.PHP方式:

次のパラメータを使用してheader()関数を呼び出します。

ヘッダー("コンテンツタイプ:application/msexcel");
ヘッダー("content-disposition:filename=file001.xls");

これら 2 つの関数は、PHP ファイルでデータベース クエリ操作を実行する前に配置されます。

通常、データベースクエリ操作が完了すると、 echo()printf()などの関数を通じてクライアントにクエリ結果を表示できます。データベース操作を実行する前に上記の 2 行を追加すると、クライアントは結果を表示しなくなりますが、xls としてダウンロードして保存するためのダイアログボックスが表示され、パスとファイル名を自由に選択できるようになります。ページ 1 にボタン <input type=button ...> またはリンク <a href=...> を配置して、ページ 2 を指すことができます。ページ 1 はクライアントに結果を表示するために使用され、ページ 2 (PHP ファイル) には上記の 2 行があり、データベースに接続してページ 1 と同じクエリ操作を実行するコードを記述します。このように、1 ページ目のこのリンクをクリックすると、ダウンロードして xls として保存するためのダイアログ ボックスがポップアップ表示されます。保存される内容は、1 ページ目に表示されるクエリ結果です。保存された形式は xls です。保存後、Excel で開いて操作できます。

PHP はサーバー側のスクリプトです。上記の方法を使用すると、実際には同じデータ結果がサーバーからクライアントに 2 回送信されます。1 回目は表示に使用され、2 回目はダウンロード用に xls ファイルにパッケージ化するために使用されます。

2. JavaScript メソッド:

まず、データが配置されているページの <head> セクションで JS 関数を定義します。

<ヘッド>
<スクリプト言語="javascript">
関数 xSaveAsxls( xResult , xFileName ){
var ow=window.open();
(オウ){
 document.write(結果);
 document.execCommand('Saveas', true, xFileName);
 近い();
}
}
</スクリプト>
</head>

次に、データを表示する <table> の前に <div id=div_id> を配置し、</table> の後に </div> を配置します。

次に、以下のボタンを作成します。

<input type="button" value="Excel ファイルとして保存" onclick=xSaveAsxls
(document.all.div_id.innerHTML,'ファイル名.xls')>

これで完了です。「Excel ファイルとして保存」と表示されます。クリックすると、保存ダイアログボックスがポップアップ表示されます。保存される内容は、xls 形式のデータ結果セットです。

JS はブラウザ側のスクリプトです。このメソッドは、表示された結果を xls として保存するために使用されます。データはサーバーからクライアントに 1 回だけ送信されるため、送信リソースが節約されます。

もう 1 つの方法としては、クエリ結果セットを PHP から JS 配列変数に渡し、それをクライアントに渡して、FileObjectSystem を呼び出して操作することを検討します。これは単なるアイデアであり、まだ実践していません。

不適切な点がありましたらご指摘ください。

文字化けの問題がある場合: 次の文を使用できます

select convert(dname using gb2312),email from d_dealerinfo into outfile 'd:/d.xls';

dnameは中国語ではどこにありますか

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • Linux mysqldump によるデータベース、データ、テーブル構造のエクスポートの詳細な説明
  • Navicat for MySQLを使用してテーブル構造スクリプトをエクスポートする簡単な方法
  • mysql mysqldumpはテーブル構造のみをエクスポートするか、データ実装方法のみをエクスポートします
  • MySQL から Excel にテーブルデータをエクスポートする際の日時形式に関する簡単な説明
  • Python3はmysqlエクスポートExcelメソッドを実装します
  • MySQL の SELECT ステートメントの結果を Excel ファイルにエクスポートする際の問題と解決策
  • MySQL の中国語文字化けの問題を解決し、SQL 文と Excel にエクスポートする方法 [画像とテキスト]
  • PHP は MySQL データを Excel ファイルにエクスポートします (fputcsv)
  • MySQL テーブル構造を Excel にエクスポートする方法

<<:  シームレスなカルーセルを実現するjQueryプラグイン

>>:  Zabbix の psk 暗号化と zabbix_get 値の組み合わせ

推薦する

RedHat 6.5 に MySQL 5.7 をインストールするための詳細なチュートリアル

RedHat6.5インストールMySQL5.7チュートリアル共有、参考までに、具体的な内容は次のとお...

MySQL 整合性制約の定義と例のチュートリアル

目次整合性制約整合性制約の定義整合性制約の分類主キー制約単一の主キーと複合主キーの違い主キーフィール...

Axios を使用して Vue2 がリクエストを開始する詳細なプロセス記録

目次序文Axiosのインストールと設定シンプルなGETリクエストを開始するPOSTリクエストを行うシ...

Docker のコンテナ データ ボリュームの概要

目次Dockerコンテナのデータ量データボリュームの使用方法1: コマンド-vを使用して直接マウント...

JavaScript 関数構文の説明

目次1. 通常の機能2. 矢印関数3. データパケットJSON 4. オブジェクト5. 約束6. 非...

HTML の相対パス (Relative Path) と絶対パス (Absolute Path) の詳細な理解

私は 1 年以上 Java Web 開発に携わっており、HTML または JSP ページの作成は避け...

MySQL オンラインリカバリ UNDO テーブルスペース 実戦記録

1 MySQL5.6 1.1 関連パラメータMySQL 5.6 では、innodb_undo_dir...

Vuex データの永続性を実装するためのアイデアとコード

vuexとはvuex: vue.js専用に開発された状態管理ツールで、すべてのコンポーネントの状態を...

Web フロントエンドのパフォーマンス最適化の詳細説明: リソースのマージと圧縮

2つの目的のためのリソースの結合と圧縮httpリクエストの数を減らす要求されたリソースのサイズを縮小...

Dockerで最もよく使われるイメージコマンドとコンテナコマンドの詳細な説明

この記事では、Docker の使用で最もよく使用されるイメージ コマンドとコンテナ コマンドを一覧表...

MySql8 WITH RECURSIVE 再帰クエリ親子コレクションメソッド

背景コメントに似た機能を開発する場合は、必要に応じてすべてのコメントのサブセットをクエリする必要があ...

JavaScript キャンバスは影付きのグラフィックとテキストを実装します

キャンバスを使用して、参照用の影付きのグラフィックとテキストを作成します。具体的な内容は次のとおりで...

docker コマンド例外「権限が拒否されました」の解決方法

Linuxシステムでは、dockerを新しくインストールし、次のようなコマンドを入力します。dock...

JSパッケージオブジェクトに関する簡単な説明

目次概要意味インスタンスメソッドプリミティブ型とインスタンスオブジェクト間の自動変換カスタムメソッド...

MySQLでのカスタムパラメータの使用に関する詳細な説明

MySQL 変数には、システム変数とシステム変数が含まれます。今回の学習課題はユーザー定義変数です。...