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 値の組み合わせ

推薦する

Linux での MongoDB のインストールに関するチュートリアル

MongoDB はクロスプラットフォームであり、Windows と Linux の両方にインストール...

Vueカスタム命令の詳細な説明

目次Vueカスタムディレクティブカスタムディレクティブフック機能出力関連属性アプリケーション例要約す...

MySQL 8.0.20 のインストールと設定方法のグラフィックチュートリアル

MySQLのダウンロードとインストール(バージョン8.0.20)のチュートリアルは参考までに、具体的...

スタイル属性 (element.style) で定義されたインライン スタイルを削除する方法

Magento を頻繁に変更する場合、element.style に遭遇することがあります。 これは...

ウェブフロントエンドウェブ開発の一般的なプロセスの簡単な紹介

フロントエンド開発を行っている初心者の学生を多く見かけますが、彼らの効率は比較的遅いです。常にコード...

MySQL シーケンス AUTO_INCREMENT の詳細な説明とサンプルコード

MySQL シーケンス AUTO_INCREMENT の詳細な説明とサンプルコードMySQL シーケ...

MySQL 基本チュートリアル: DML ステートメントの詳細な説明

目次DMLステートメント1. レコードを挿入する2. 記録を更新する3. シンプルなクエリレコード4...

dockerでnginxを実行するときにdaemon offが使用される理由についての簡単な説明

とても嬉しいです。この問題に遭遇したとき、私はDockerコンテナのプロセス原理について話さなければ...

mysql 5.7.18 winx64 無料インストール設定方法

1. ダウンロード2. 減圧3. パス環境変数を追加し、mysqlが配置されているbinディレクトリ...

要素 el-button ボタンコンポーネントの使用の詳細な説明

1. 背景ボタンは非常によく使われており、Element のボタン機能は非常に包括的です。この記事で...

MySQL での Join の使用に関する詳細な説明

前の章では、1 つのテーブルからデータを読み取る方法を学習しました。これは比較的簡単ですが、実際のア...

JavaScript継承のさまざまな方法とメリット・デメリットを詳しく解説

目次1. プロトタイプチェーン継承2. コンストラクタの借用(古典的な継承) 3. 組み合わせ継承4...

モバイルレイアウトにvw+remを使用する方法

まだ rem フレキシブルレイアウトを使用していますか?圧縮された js コードの大きなセクションを...

MySQL で 2 つのテーブルをクエリする場合の from と join の違いの概要

序文MySQL では、複数テーブル結合クエリは非常に一般的な要件です。複数テーブルクエリを使用する場...

JavaScript 配列重複排除ソリューション

目次方法1: set: データ型ではなくデータ構造であり、メンバーは一意である方法2: オブジェクト...