当社には、CMS、CRM、およびその他のいくつかのシステムを含むビジネス ソリューションがあります。これらは、クライアントごとに複数のドメインにインストールされています。システムはまだ開発中であるため、新しいテーブルとフィールドがデータベースに追加されています。クライアントに新しいバージョンをリリースするたびに、クライアントのデータベースを調べて、新しいフィールドとテーブルを手動で挿入する必要があります。これを自動的に行う方法はありますか (新しいフィールドとテーブルを検出して挿入するスクリプトでしょうか?)、php と mysql を使用しています。クライアント データのバックアップ、データベース テーブルの削除、SQL クエリの実行によるすべてのデータベース テーブル (新しいテーブルを含む) の挿入、および顧客データの再挿入は避けたいと考えています。これは可能ですか?
質問する
76 次
2 に答える
1
DB Extract、Compare-and-Search Utility — 2 つの MySQL データベースを比較し、相違点を表示し、スクリプトを作成してターゲットを更新できます。
于 2013-02-14T09:59:20.743 に答える
0
あなたが探しているのは
ALTER TABLE 'xyz' ADD 'new_colum' INT(10) DEFAULT '0' NOT NULL;
または、列を取り除きたい場合
ALTER TABLE 'xyz' DROP 'new_colum';
すべてのテーブル編集を update.php ファイルに入れ、手動で一度呼び出して削除するか、"new_colum" を一度選択して存在しない場合はデータベースを更新してください。または私がすること:「設定フィールドに「ソフトウェアバージョン」があり、これをトリガーとして使用してテーブルを更新します。ただし、新しいスクリプトをインストールする必要があるため、手動で呼び出すことができます。
于 2013-02-14T09:56:07.270 に答える