我正在尝试更新数据库表,表的名称格式为employee_yearName_monthName。因为我想将每个月的数据保存在一个单独的表格中。
现在月初,该月没有表格。所以我应该创建表。但问题是如何决定表格是否存在?
提前感谢。
答案 0 :(得分:2)
I want to keep each month's data on a separate table
这是严重不好的设计!如果您有巨大数据量(至少在50-100GB范围内,大约一亿行),则更喜欢分区( - > {{3 }, - > Oracle。如果您没有那么多数据,请不要担心,将数据存储在一个表中,使用正确的列,并设置正确的索引!
为什么这是一个糟糕的设计?试想一下:
EDIT 溶液
SELECT * FROM USER_TABLES WHERE TABLE_NAME LIKE 'employeeName%
。答案 1 :(得分:2)
正如其他人所说,这不是一个好的设计。但是,如果你想坚持你的设计,你可以使用
CREATE TABLE IF NOT EXISTS tablename ( ... )