作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是一个非常模糊的错误,我似乎无法获得很多上下文,所以请提出任何可能有助于澄清的问题。我会尽力为您提供尽可能多的背景信息。
我目前正在使用逗号分隔的括号分隔值列表为 mysql 创建一大堆插入语句(即 insert into table (a, b, c) values (1,2,3),( 4,5,6),(7,8,9);
) 我正在创建一千个这样的元组,用“,”连接它们并将它们插入一个语句中。
问题是我在问题中遇到了错误。
每次我有一个新的插入语句时,我什至求助于连接到数据库。如果您愿意,我可以提供代码,但它都隐藏在 with
语句后面。
我认为没有理由断开与数据库的连接....
编辑:为什么不呢。这是代码。在 for 循环中:
with SQLConnection(DATASOURCES[SCHEDULEDB]) as db:
db.execute_sql( command + ' ' + ','.join(block) + ';' )
几个定义:
def execute_sql(self, query):
if query.startswith('select'):
return self.execute_read(query)
else:
return self.execute_other(query)
def execute_other(self,query):
adapter = OdbcCommand(query,self.connection)
adapter.ExecuteNonQuery()
return True
最佳答案
我不确定你为什么会收到你收到的错误。也许它与创建非常长的 SQL 语句有关?无论如何,你应该始终使用参数化 SQL 语句;避免手动编写 SQL(带参数):
sql = 'INSERT INTO table (a,b,c) VALUES (%s,%s,%s)'
args = [(1,2,3),(4,5,6),(7,8,9)]
cursor.executemany( sql, args )
关于python - 系统错误 : The connection has been disabled,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5264521/
我是一名优秀的程序员,十分优秀!