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

推薦する

MySQL最適化ツール(推奨)

序文今日 GitHub を閲覧していたところ、SQL を最適化および書き換えるための sora とい...

IE 環境での css-vars-ponyfill の使用に関する詳細な説明 (nextjs ビルド)

css-vars-ポニーフィルCSS 変数を使用して Web ページのスキニングを実現すると、互換...

ろうそくを溶かす(水滴)サンプルコードを実現する純粋な CSS

成果を達成する実装のアイデアフィルターのコントラストとぼかしを利用して溶ける効果を実現します。親要素...

CSS で隠し要素を実現する 7 つの興味深い方法

序文非表示要素の 3 つの属性である表示、可視性、不透明度の類似点と相違点は、フロントエンドの就職面...

MySQL マスタースレーブレプリケーションの原理と実践の詳細な説明

目次導入効果原理形状練習するこの記事では、例を使用して、MySQL マスター/スレーブ レプリケーシ...

ウェブページレイアウトデザインのシンプルな原則

この記事では、Web ページ レイアウト デザインのいくつかの簡単な原則をまとめ、Web ページ デ...

Chrome タブバーを実装するための CSS のヒント

今回は、Google Chrome のタブバーのような、特殊な丸い角を持つナビゲーション バーのレイ...

Apache Webサーバーのインストールと設定方法

信頼性が高く、人気があり、簡単に構成できる Web サーバーである Apache で独自の Web ...

MySQL自動シャットダウン問題への対処の実践記録

最近、あるプロジェクトを手伝ったのですが、MySQL マシンがしばらくすると自動的に停止し続けました...

tinyMCEの使い方と体験の詳細な説明

tinyMCE の使用方法の詳細な説明初期化TinyMCE を初期化するときは、ページの HEAD ...

phpmyadmin を使用して MySQL 権限を設定する方法

目次ステップ 1: root ユーザーとしてログインします。ステップ 2: 新しいデータ テーブルを...

MySQL データベース データのロード 複数の用途

目次MySQL Load Dataの多様な用途1. LOAD の基本的な背景2. 基本パラメータをロ...

Nginx_geo モジュールを使用して CDN スケジュールを設定する方法

NginxのGeoモジュールの紹介geo ディレクティブは、ngx_http_geo_module ...

Windows 10 でカスタムドメイン名をバインドするように Hexo と GitHub を構成する方法

Hexo は Windows 10 でカスタムドメイン名を GitHub にバインドしますまずドメイ...

Spring Cloud での Docker デプロイメントに jib を使用する詳細な手順

ジブの紹介Jib は Google が開発した、Java アプリケーションの Docker および ...