2017-05-31 17 views
0

私はOpenOffice Baseを初めて使用しています。数時間後には、同じヘッダーを持つ約290の表があります。これらをすべて1つのテーブルにマージする最も簡単で簡単な方法は何ですか?OpenOffice Base - 200テーブルを1つに統合する

+0

MySQL、PostgreSQL、または組み込みのHSQLDB 1.8など、データベースエンジンとは何ですか? –

+0

私はOpenOffice Basicをインストールしました。私はそれがHSQLDB 1.8の組み込みを利用していると仮定します。 –

答えて

0

Tools -> SQLに移動し、CREATE TABLE AS構文を使用してください。このようなコマンドは、Vimなどのまともなテキストエディタを使って、すべての290のテーブルに対して素早く作成することができます。

create table Table3 as 
select * from Table1 
union select * from Table2 
union select * from Table3 
union select * from Table4; 

View -> Refresh Tablesにアクセスしてください。

この例はMySQLでテストされています。構文は、データベースエンジンによって異なる場合があります。

EDIT

上記のコマンドは、HSQLDB 1.8は動作しませんので、あなたは別のエンジンを使用している必要があります。どのように接続を設定しましたか?

とにかく、MySQLで使用可能なすべてのテーブル名については、Get table names using SELECT statement in MySQLを参照してください。 HSQLDBの場合How to see all the tables in an HSQLDB database?

+0

動作しますが、データが壊れます。 Sh **、私はそれを考えなかった。 1つのテーブルにスローするレコードは、「BOM」です。各レコードに元のテーブル名が含まれている場合は、上記の "結合"が完璧です。 私は "16630020" ....)から、 "1633万" UNION SELECT * FROM "T" SELECT * INTOテーブルと使用... INSERTを作成する必要がありました。 –

+0

私は問題を解決するために働いています。 "a"テーブルを修正するためのマクロを作成しました:列を削除し、列を追加し、追加された列をテーブル名で更新します。それは動作しますが、... 利用可能なすべてのテーブルのリストをどのように繰り返しできますか? –

+0

編集された回答を参照してください。 –

関連する問題