如何判断mysql数据库已经存在?
我学习有两个问题想问下:
①我跟老师用的数据库软件不一样,我用的是mysql官方的,创建表时长度、主键和自增都设置了,但是插入数据时提示id没有默认值。
②如何在创建数据库前,判断数据库是否存在,我尝试用以下sql语句判断
CREATE DATABASE IF NOT EXISTS testdb
但是第二次运行时提示数据库已存在的警告,那么 IF NOT EXISTS根本没起作用啊!请问应该怎么判断?后来用了网上一个方法成功了,但是感觉有点曲线救国:
if not cursor.execute("SELECT * FROM information_schema.SCHEMATA where SCHEMA_NAME='testdb'"): sql_create_db = "create database testdb" cursor.execute(sql_create_db)
搜了一晚上都无果,请问应该怎么正确判断数据库或表是否存在?