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

推薦する

変数が空かどうかを判定するシェルの方法の概要

シェルで変数が空かどうかを判断する方法シェルプログラミングでは、パラメータのエラーチェック項目に、変...

ウェブページ印刷細線表+ページ印刷究極の戦略

最近、クライアントのために印刷していたとき、ページのヘッダーを印刷するのではなく、表の内容だけを印刷...

初心者向け入門講座⑧:記事サイトを簡単に作る

前回の投稿では、Web ページの作成方法について説明しました。Web サイトは多くの Web ページ...

Windows 10 での MySQL 5.7.21 winx64 のインストールと設定方法のグラフィック チュートリアル

mysql 5.7.21 winx64 のインストールと設定方法: MySQLのコミュニティバージョ...

HTML でのアンカーポイントの使用_PowerNode Java アカデミー

ここで、アンカー ポイントを制御するいくつかの状況をまとめてみましょう。 1. 同じページ <...

SQLクエリの実行順序をゼロから学ぶ

SQL クエリ ステートメントの実行順序は次のとおりです。 (7)選択 (8) DISTINCT &...

WeChatアプレットのスクロールビューが左右にスライドできない問題を解決する方法

私は現在、自分自身の小さなプログラム プロジェクトに取り組んでいます。プロフェッショナルなフロントエ...

MySQL初心者はグループ化や集計クエリの煩わしさから解放されます

目次1. グループクエリの概略図2. groupbyキーワード構文の詳細な説明3. 簡単なグループク...

Reactはconetxtを通じてマルチコンポーネント値転送関数を実装します

この関数の効果はvue的provide/injectに似ています。 contextを通じて反応できる...

タグのターゲットリンクを iframe に向ける方法

コードをコピーコードは次のとおりです。 <iframe id="myFrameId&...

VMware15.5でcentos8.1をインストールし、物理メモリが不足する問題に対処する最も完全なチュートリアル

1. 仮想マシンの準備1. 新しい仮想マシンを作成する 2. 仮想マシンのカスタマイズを選択する 3...

Alibaba Cloud Centos7.X で外部にポートを開く方法

一言で言えば、大手メーカーからクラウド サーバーを購入する場合は、セキュリティ グループに移動して、...

HTML Web ページ リスト タグ学習チュートリアル

HTML Web ページ リスト タグの学習チュートリアル。 HTML ページでは、リストはアウトラ...

Vueデータ監視の原理の詳細な説明

目次1. はじめにII. 監視対象2.1 なぜオブジェクトを監視する必要があるのですか? 2.2 デ...

MySQLデータベースに画像を保存するいくつかの方法

通常、ユーザーがアップロードした写真はデータベースに保存する必要があります。一般的に、解決策は 2 ...