最佳答案
使用
CREATE TABLE IF NOT EXISTS
.
UPDATE
为了记录,并非所有RDBMS都支持CREATE … IF NOT EXISTS. MysqL确实如此,但对于那些寻求更便携式解决方案的人来说,要知道你有多种(效率较低但功能较强)的方法来实现同样的目标:
>无条件发出CREATE TABLE;如果表已经存在,语句将失败,在这种情况下,只需吞下错误并继续
>从ANSI information_schema
中的表对象中进行选择,以查看给定的表是否已经存在(如@Derek最初建议的那样 – 参见@lexu
‘s answer的实际查询);取决于结果,要么发出CREATE TABLE – 要么不要(当访问information_schema.tables时要注意表名称区分大小写等问题,表格出现在多个模式中的可能性等)