• ベストアンサー

MS-AccessまたはExcleで作ったものをMySQLにインポートするには?

MySQL(ver 4.1.8)をインストールしました。 いろいろサイトを探し調べていますが、DB構築方法が良くわからないため、MS-AccessまたはExcleで作ったものをMySQLにインポートできないものかと考えています。 方法をご存知の方がいましたら、ご教授下さいませ。 ちなみに、クライアントでテストしています。 クライアントのOSはWindowsXP、PHPを使ってブラウザ上からMySQLテーブルへ読み書きしたいと思っています。(PHPも勉強中です…)

質問者が選んだベストアンサー

  • ベストアンサー
  • TM31
  • ベストアンサー率38% (8/21)
回答No.2

MySQLにはインポート先となるデータベース(ここでは仮に"databaseA"とします)及びテーブル(同じく仮に"tableA"とします)が既にできており、接続ユーザー(同じく仮に"userA"、パスワードを"passwordA"とします)も設定されているとします。 また、ODBCドライバ(MyODBC)もインストールされているものとします。 ODBCデータソースの設定方法は、Windows2000であれば以下の手順になります。 1.「コントロールパネル」→「管理ツール」→「データソース(ODBC)」を開く。 2.「システムDNS」タブの「追加」ボタンをクリックし、「MySQL ODBC 3.51 Driver」を選択し「完了」ボタンをクリック。 3.「DataSourceName」に任意の名前(ここでは仮に"DataSourceA"とします)を入力し、「Host/ServerName」にMySQLが稼動しているサーバー名、「Database Name」に上記の"DatabaseA"、「User」「Password」にそれぞれ上記の"UserA"、"PasswordA"を入力し、「OK」ボタンをクリック。 4.Accessのテーブルリンク設定画面で上記の"DataSourceA"を選択すれば、テーブルの一覧が表示されるので、その中からリンクしたいテーブルを選択すればOKです。 また、もっと簡単な方法として、MySQLクライアントを用いて、CSVファイルを直接インポートすることができたはずです。(ExcelファイルをCSVに変換、もしくは、AccessのテーブルもCSVとしてエクスポートすればOKですね) 昨日回答した時点では、この機能があることを忘れていました。 この方法については私もど忘れしてしまいましたので、インターネットで検索してみて下さい。すぐに見つかると思います。

THUBAN
質問者

お礼

WindowsXPだったこともあってか、ちょっと画面とか設定項目とかが違っていたようでしたが、いろいろ触って設定して試してみていたところ、無事接続できました! で、Accessテーブルに、きちんとMySQLのデータがインポートされました。 どうも、ありがとうございました! MySQLでの、CSVファイルのインポートは、ちょっと不明です。 MySQLにAccessやExcelデータをインポートさせたかったのですが・・・ phpMyAdmin画面で見るに、エクスポートはあるのですが、インポートの設定をどこで行うのかは不明です・・・(>_<)

THUBAN
質問者

補足

その後、いろいろやってみたところ、以下で出来そうなので、ご報告まで。 Accessでテーブルを作って、ODBC接続をし、MySQLにエクスポートしてみました。 phpMyAdminでMySQLを確認したところ、MySQLにテーブルが出来、データもきちんとインポートされているようでした。 これで、いけそうです。 ただ、MySQLの方で、フイールド名もフィールド内のデータも2バイト(全角)が文字化けしてしまっているので、正確にインポートされているかどうかが、判断できていませんが・・・(>_<)

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • TM31
  • ベストアンサー率38% (8/21)
回答No.3

>ただ、MySQLの方で、フイールド名もフィールド内のデータも2バイト(全角)が文字化けしてしまっているので、正確にインポートされているかどうかが、判断できていませんが・・・(>_<) MySQLの文字コード設定はどうなっていますか? デフォルトではlatinになっていますので、日本語を扱う場合はsjisなどを指定しておく必要があります。 設定方法はmy.iniの[mysqld]行の下に default-character-set=sjis と記述し、MySQLを再起動すれば有効になります。 ただし、既存のデータベースには反映されないので、もう一度データベースを作り直す必要があります。 他にもujis(euc)やutf8などが日本語を扱えます。 ujisで設定する場合は default-character-set=ujis とします。 MySQLのクライアントとしてAccessを利用するのであればsjisでいいでしょう。 Webアプリケーションであれば、Webアプリケーションの文字コードに合わせる必要があります。 また、.NETアプリケーションであればutf8が無難でしょう。 phpMyAdminは使ったことがないので、phpMyAdminによる確認方法はちょっと分かりませんが、phpMyAdminが表示されているときのブラウザのエンコードとMySQLの文字コードを同じにすれば、日本語を正しく扱うことができるのではないかと思います(←あくまでも予想です)。

THUBAN
質問者

お礼

自分でも調べていろいろとやってみましたが、結局、解決しませんでした。 「かねやんMyAdmin」というツールがあることを知ったので、AccessとphpMyAdminの使用はあきらめて、それでやってみることにしました。 いったん、締め切りたいと思います。 また疑問がでたら、Qしたいと思います。 どうも、ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • TM31
  • ベストアンサー率38% (8/21)
回答No.1

AccessにExcelのデータをインポートし、MySQLのテーブルをAccessにODBCリンク接続。 あとはAccess内のテーブル同士のやりとりになります。 この方法が一番簡単かと思われます。 ちなみにODBCドライバは http://dev.mysql.com/get/Downloads/MyODBC3/MyODBC-3.51.11-1-win.msi/from/ftp://ftp.u-aizu.ac.jp/ftp/pub/dbms/mysql/mysql.com/ にてダウンロードできます。

THUBAN
質問者

補足

ありがとうございます。 AccessでODBC接続するのは何となくわかっていたのですが、具体的にデータソースの選択画面でどうやって進めていいのかが良くわからなくて・・・ もし、手順がおわかりであれば、ご教授下さいませ。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • MYSQL テーブルデータエクスポート→インポート

    mysqlのテーブル単位でのバックアップ/インポートの方法を 教えてください。 mysqlのデータベース  abc テーブル名 dfg 試しに下記内容をやってみたいですが、コマンドラインからの 方法を詳しい方ご教授頂けませんでしょうか? abc データベース中のdfgのテーブルのデータを abcのコピーDBのabc2というデータベース中のdfgへインポート更新 させたいのですが、DB単位でのバックアップはわかるのですが、 テーブル単位でのコマンドラインがわかりません。 どなたかわかられる方ご教授頂けませんでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQL/DBサーバって、MySQL/DBクライアントみたいなものりますか?

    Linux+Apache+MySQLでサイト構築を検討しています。 MySQL/DBって、ORACLE8で言うところの、 いわゆる「Net8クライアント」のようなものってあります? 実は、今まで、NT+MS-SQLServer7でサイト構築してたのですが、 Linuxで再構築することとなっちゃいました。 で、MS-SQLServer7だったら、クライアントPCから、 GUIを使って、データベースのデータを簡単に変更することができます。 しかし、LinuxではMS-SQLServerは使えないので、じゃぁ、ORACLEって手もありますね。 そこで、ORACLEだったら、Net8があるので、多分、 上記のような使い方もできると思うのですが、 ORACLEは、導入コストが高すぎるので、却下されてしまいました。 で、Linux+MySQLにしようかと・・・。 しかし、サーバ機にLinux+MySQL/DBを構築するのはいいのですが、 Windowsなどのクライアントから、ORACLEでいうNet8でODBCのような接続で、 Microsoft-Accessなどを使って、データベースのデータを編集させたいんです。 よろしくお願いします!

  • インターフェースからCSVを取り込んで、MySQLにインポート

    インターフェースからCSVを取り込んで、MySQLにインポート ブラウザのインターフェースからCSVファイルを選択して、MySQLにインポートするようにしたいのですが、 (1)ファイルのアップロード (2)サーバー上にある(アップロードされた)CSVファイルをMySQLにインポート という手順で処理するほかないでしょうか? ローカルのCSVファイルを直接MySQLにインポートするような画期的な方法(ライブラリなど)あったらいいなと思い質問します。 PHPのバージョン:5.2 MySQLのバージョン:5.1 です。 まだ基本設計の段階なので、具体的な質問になっておらず申し訳ありませんが、 よろしくお願いします。

    • 締切済み
    • PHP
  • MySQLにデータをインポートできない

    MySQLにAccessのテーブルデータをインポートする方法はありませんか?教えてくださーい!

    • ベストアンサー
    • MySQL
  • access2000からmysqlへ access to mysql converter

    はじめまして aceess からmysqlにデータをコピーする方法で迷っています。 access2000のデータをオンラインで使用しようと思っています。すでにローカルでaccessDBを使用していて、その情報をオンラインで閲覧できるようにしたいです。 すでにmysqlの使用可能なサーバーをレンタルしているのでそこにmysqlとしてデータをおこうと考えています。(プログラムはphp) 市販の(access to mysql converter )コンバーターなどを使用するのが一番なのでしょうか? アクセスDBにテーブルが複数あるのでテーブル一つ一つをエクスポート、mysqlからインポートはちょっと大変そう。 (データは月に一度accessからmysqlにコピーして、アップロード.ローカルのaccessはこのまま使用し続けます) access to mysql converter などを利用されたことのある方、感想をお聞かせください。 皆様はaccessからmysqlにどのようにデータをコピーしているのでしょか?

  • MYSQLデータのインポート

    レンタルサーバにある、mysqlのテーブル及びデータを自分の端末(ローカルホスト)のmysqlにインポートしたいのですが、どなたか効率のいい方法をご存知の方おられたら、教示してください。

  • PHP-ACEESか PHP-MySQL-ACCESSか

    「ACESS + MySQL 実用データベースの構築」 という本が発売されています MS-ACCESSという気軽なデータベースと さらにWEBに発信できるMySQLペアになれば これは便利と思っていました ところが この「教えて」で PHPからACCESSを操作できる、みたいで これはMySQLをはぶけるので便利、と 飛びつきたい気持ちですが 実用面ではどうでしょうか? アドバイスください

  • ORACLE と MySQLどちらで開発すべきか悩んでいます。

    DB連動型のサイト(NT+IIS+ASP+MS-SQLServer)を既に構築済みですが、 昨今の「Nimda」ウィルスに関連して、Microsoft製品をやめて Linuxにシステム移行しようかと検討しております。 ASPがLinux+Apacheで動作しないことは分かっておりますので、 PHPに移行しようかと覚悟を決めております。 (できれば、ASPの資産をそのまま活かしたいのですが・・・) (Linux+Apacheで、ASP動かす方法ご存知でしたら、合わせて教えてくださーい^-^;) で、データベースなんですが、現在はMS-SQLServerを使ってますが、 Linuxに移行となれば、ORACLEかMySQLしかないかと思っております。 (PostgreSQLは、selectなどの検索系が遅いと聞いておりますので、却下します。) そこで、LINUX+ORACLEか、LINUX+MySQLのどちらで開発すべきか迷っています。 【私が悩んでいる長所・短所】 ■MySQL  ○基本的にソフトは無料なので、低価格で開発できる。(これが、一番ありがたい!)  ×安定性の面で、不安?が・・・。  ×私は、MySQL初心者なので、既存MS-SQLServerデータの移行・DB構築・DBメンテに不安要素いっぱい! ■オラクル  ○私は、Oracleに精通しており、DB構築・データ移行・DBメンテが容易にできる。  ○安定している。  ×値段が高い。(これが、一番ネックなんです。          だって、100万以上するでしょーToT;予算的に10万くらいが限界・・・。) 費用的なことを考えると、MySQLにしようかという雰囲気です。 どうぞ、ご意見をお聞かせいただければ幸いです。

  • CSVファイルをMYSQLにインポート

    先日からMYSQL+PHPの勉強をはじめました。 データベース構築の際、以前作成したCSVファイルをMYSQLのテーブルとして 利用したいと考えております。 そこで、MYSQLコマンドより、 LOAD DATA LOCAL INFILE 'ファイル名.csv' INTO TABLE テーブル名 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; Query OK, 0 rows affected (0.04 sec) Records: 102 Deleted: 0 Skipped: 102 Warnings: 0 とCSVファイル自体が悪いのかSQL文に問題がるのかインポートがうまくいきません。。 ちなみにCSVは  0,2011/6/2 0:00,80.94,81.32,80.55,80.92 0,2011/5/25 0:00,81.94,82.17,81.8,81.95 0,2011/5/23 0:00,81.77,82.04,81.32,81.99 環境はphpdevで一括でインストールした phpadmin: バージョン2.3.2 MYSQL: MySQL4 apache: 1.3.27 初心者で基本的な質問かもしれないですがどうかご教授お願いします。

    • ベストアンサー
    • MySQL
  • MySQL接続について

    今、あるシステムを構築中なのですがCSVデータをデータベースにインポートする際にチェック後エラーとなったものをエラーリストとしてCSVに吐き出しています。このエラーリストを取込、データ修正作業を行うのですが、その際一時テーブルを作成してエラーリストをインポートしたうえで修正作業をしたいと思っています。 ただ、レコード数が多いので複数ページにまたがって修正するようになるのですが、一時テーブルはMySQLとの接続が切れると消えてしまうらしいのです。 この場合、ページを表示した時点でスクリプトは一度終了しているので、テーブルが消えるものだと思っています。 これを指定するまで一時テーブルを維持する方法はあるのでしょうか?mysql_pconnect()という関数なら永続的にできると書いているのですが、これでしょうか? この場合、切断したい場合はどうすればいいのでしょうか? 言語はPHPで構築しています。 説明が分かりにくいでしょうが、宜しくお願いします。

    • 締切済み
    • PHP