我正在尝试使用Python代码创建表。 我觉得我做对了,但是当我执行代码时,什么也没发生。
我尝试了以下代码
commands.sql
DROP TABLE IF EXISTS text;
CREATE TABLE text(
id_text SERIAL PRIMARY KEY,
line_number VARCHAR(3),
line_content VARCHAR(255)
);
CreateDB.py
from Utils import ConnectDB as ConnectDBFile
class CreateDB:
conn = None
cursor = None
sql_path = "./commands.sql"
array_sql_commands = []
def __init__(self):
self.conn = ConnectDBFile.ConnectDB.getInstance()
self.cursor = self.conn.cursor()
self.setSqlCommands()
def setSqlCommands(self):
self.array_sql_commands = open(self.sql_path).read().split(";")
def createDatabase(self):
for command in self.array_sql_commands:
try:
print("Running : " + command)
self.cursor.execute(command)
except :
print("Command skipped")
RunCreation.py
from Utils import CreateDB
obj_create_db = CreateDB.CreateDB()
obj_create_db.createDatabase()
有人知道我的代码有什么问题吗? 谢谢!
编辑::我正在尝试手动添加;
,因为split()
删除了它。现在,我的sql命令以;
结尾,但是结果没有任何变化。