データベース テーブルを更新しようとしていますが、テーブルの名前の形式は employee_yearName_monthName です。毎月のデータを別のテーブルに保持したいからです。
今月の初めには、その月のテーブルはありません。だから私はテーブルを作成する必要があります。しかし問題は、テーブルが存在するかどうかをどのように判断するかです。
前もって感謝します。
他の人が言ったように、これは良いデザインではありません。ただし、デザインに固執したい場合は、そのまま使用できます
CREATE TABLE IF NOT EXISTS tablename ( ... )
I want to keep each month's data on a separate table
これは本当に悪いデザインです!膨大な量のデータ (少なくとも 50 ~ 100 GB の範囲、約 1 億行) がある場合は、むしろパーティショニング (--> Oracle 、 --> MySQL を優先します。それほど多くのデータがない場合は、単に心配する必要はありません。データを 1 つのテーブルに格納し、適切な列を指定して、適切なインデックスを設定してください。
なぜこれは悪いデザインなのですか?これらについて考えてみてください:
OPが詳細を開示したので編集
USER_TABLES
管理テーブルを使用してテーブル名をクエリできますSELECT * FROM USER_TABLES WHERE TABLE_NAME LIKE 'employeeName%
。