当前位置: 首页 > 面试题库 >

使用python MySQLdb执行* .sql文件

彭宏阔
2023-03-14
问题内容

如何使用MySQLdb python驱动程序执行* .sql文件中存储的sql脚本。我在尝试

cursor.execute(file(PATH_TO_FILE).read())

但这不起作用,因为 cursor.execute 一次只能运行一个sql命令。我的sql脚本改为包含多个sql语句。我也在尝试

cursor.execute('source %s'%PATH_TO_FILE)

但也没有成功。


问题答案:
for line in open(PATH_TO_FILE):
    cursor.execute(line)

假设文件中每行有一条SQL语句。否则,您将需要编写一些规则以将行连接在一起。



 类似资料:
  • 我有一个情况需要处理,我有我的liquibase按照推荐的最佳实践进行结构化。更改日志xml的结构如下所示 在我们的应用程序组中,我们运行updateSQL来生成统一的sql文件,并通过我们的DBA组执行更改。 如何在Liquibase ChangeLog中包含这些常见的重复语句。

  • 问题内容: 我们有一个Perl脚本,该脚本运行SQL并将数据放入表中。现在,我们不想传递一个SQL语句,而是希望传递一堆将它们放在一起的.sql文件中。我们知道我们的程序将失败,因为它期望一个SQL语句,而不是一堆SQL语句(也来自.sql文件)。我们如何使其与.sql文件(具有多个INSERT语句?)一起使用。我们正在使用DBI软件包。 一小段代码: 问题答案: 不确定您想要什么… 创建DBI对

  • 问题内容: 我有一个sql脚本文件,我需要通过java执行其中的命令。我在互联网上搜索了相同的内容,得到了一些定义解析器的代码以拆分SQL语句并执行该代码。但是它们都不适合我的sql脚本文件。因为我的脚本文件同时包含create语句和alter语句,但不带分号[相反,它具有GO]有人可以建议一种执行脚本文件的解决方案吗?谢谢,Mahesh 问题答案: 对于简单的脚本,我通常使用ibatis- Sc

  • 我用ProcessBuilder写了一个java程序来启动CMD提示符 控制台中的输出: SQL*Plus:2015年1月19日星期一14:07:53发布11.2.0.3.0 版权所有(c)1982、2011,Oracle。保留所有权利。 连接到:Oracle Database 11g Enterprise Edition 11.2.0.3.0版-64位生产,包括分区、Oracle标签安全、OLA

  • 问题内容: 我不知道如何在中执行文件。这是我正在使用的代码。它不起作用,也不打印任何内容。有什么方法可以使用命令行执行文件? 问题答案: 您可以在node.js中尝试子进程模块的execFile函数 请参阅:http : //nodejs.org/api/child_process.html#child_process_child_process_execfile_file_args_option

  • 问题内容: 一年多以前,有人问这个问题:在python中执行用于在SQL Management Studio中运行的.sql文件 。 我正在用python编写脚本,该脚本连接到SQL Server,并根据SQL命令在大(数GB)的.sql文件中创建和填充数据库。 看起来SQLCMD需要下载并安装SQL Server Express。还有其他方法可以从python执行.sql文件,而不需要每个使用我