2

phpmyadmin を介した Excel ファイルの初期ダンプであるデータベースがあります。そのため、書式設定やその他のロジックはテーブルに適用されませんでした。したがって、基本的に「varchar」スタイルの行のテーブルが残ります。その中には、日付や時刻などが含まれます。

例: start_time、end_time、start_date、end_date .. 7:30 PM、11:00PM、9/9/12、11/22/12 のように表示され、いくつかの行はそのままで問題ありません。残念ながら、誰かがテーブルと呼ばれるこのお粗末なデザインに基づいて多くの機能をベースにしているため、テーブル全体をより良い形式に変換することはできません。本当にそれを実現する唯一のことは、テーブルには、何かに関連付けることができる行ごとに自動インクリメントされた ID があることです。だから私は物事をバラバラにするこの機能の多くを修正している間、物事にパッチを当てる手段として考えています.

データ型に適切なタイプの行を持つことができるテーブルを作成しBETWEEN()、たとえば start_date などのいくつかの mysql 機能を使用して、a - z のリストを取得できますが、リストは制限されます。

したがって、あるテーブルから次のテーブルにデータをダンプできる方法があるかどうかを調べようとしていますが、このクエリのプロセスで、datetime などの必要な型に変換し、start_date と start_time を datetime 形式に結合します終了時間/日付についても同様ですか?

それとも、これはヒープで引き出し、PHP でループして、新しいテーブルに新しい行を挿入する必要があるものですか?

4

2 に答える 2

1

これには、次の手順に従います。

  1. ソーステーブル(コピーするテーブル)のすべてのフィールドを持つ同じDBに新しいテーブルを作成します。

  2. PHP ファイルを作成します。

  3. ソーステーブルのすべての値を選択する MYSQL クエリを記述します。

  4. while ループで、これらの行を新しいテーブルに挿入するクエリを記述します。

  5. その前に、php の「strtotime() および date()」関数を使用して、start_time、end_time、start_date、end_date 列の値を必要な形式に変換します。

  6. 新しいテーブルに新しい値を挿入します。

于 2012-10-10T06:50:13.093 に答える