In your code,After creating database connector can't identify database name because database name is not given to connector.It means while creating table in database you must provide database name to connector then table can be created in database which is specified by the connector.
At first you need to create database as follows.
import mysql.connector
dbname = input('Please enter the name of database : ')
db = mysql.connector.connect(
host = 'localhost',
user = 'root',
password = '',
)
cursor = db.cursor()
cursor.execute("CREATE DATABASE IF NOT EXISTS %s" %dbname)
cursor.close()
db.close()}
After creating database you need to manually provide name of database in order to create database table inside existing database.Here dbname is entered by user i.e.
import mysql.connector
db = mysql.connector.connect(
host = 'localhost',
user = 'root',
password = '',
database=dbname, #providing name of database to connector
)
cursor = db.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS %s (email VARCHAR(30),pwd
VARCHAR(20))" %dbname)
cursor.close()
db.close()}
Finally you can ask user to enter database name and can create table inside database by same name (dbname in your case) using following code.
import mysql.connector
dbname = input('Please enter the name of database : ')
db = mysql.connector.connect(
host = 'localhost',
user = 'root',
password = '',
)
cursor = db.cursor()
cursor.execute("CREATE DATABASE IF NOT EXISTS %s" %dbname)
cursor.close()
db.close()
import mysql.connector
db = mysql.connector.connect(
host = 'localhost',
user = 'root',
password = '',
database=dbname,
)
cursor = db.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS %s (email VARCHAR(30),pwd
VARCHAR(20))" %dbname)
cursor.close()
db.close()