我在.sql文件中存储了一个PostgreSQL模式。看起来像:
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
facebook_id TEXT NOT NULL,
name TEXT NOT NULL,
access_token TEXT,
created INTEGER NOT NULL
);
连接到数据库后如何运行该架构?
我现有的Python代码适用于SQLite数据库:
# Create database connection
self.connection = sqlite3.connect("example.db")
# Run database schema
with self.connection as cursor:
cursor.executescript(open("schema.sql", "r").read())
但是psycopg2executescript
的游标上没有方法。那么,我该如何实现呢?
您可以使用execute
:
with self.connection as cursor:
cursor.execute(open("schema.sql", "r").read())
尽管您可能想先将psycopg2设置为autocommit
mode,以便可以使用脚本自己的事务管理。
如果psycopg2提供了一种更智能的模式,那就是它可以一次以一条语句读取文件并将其发送到DB,那就太好了,但是据我所知,目前还没有这种模式。面对$$
引号(以及$delimiter$
引号可能是任何标识符的变体)standard_conforming_strings
,E''
字符串,嵌套函数体等时,它需要一个相当扎实的解析器才能正确执行。
请注意,这 不适 用于:
psql
反斜杠命令的内容…因此不适用于来自 pg_dump
问题内容: 在Python psycopg2中,如何检查行是否存在? 目前我正在 问题答案: 不要使用(返回的列表永远不会大于0),请使用: 如果没有要获取的内容,则返回,对进行测试会为您提供一个方便的布尔值,以直接返回。
问题内容: 在什么情况下,选择查询不会出现在V $ SQL视图中? 例如,如果我运行此命令: 然后立即运行此命令: 在什么情况下我将不返回任何行?在这种情况下,我可以强制将查询信息记录在V $ SQL中吗? 问题答案: 在什么情况下,选择查询不会出现在V $ SQL视图中? 一种情况是在真实应用程序群集(RAC)上。在这种环境下,将仅包含当前节点的库缓存。要查看所有节点上的库缓存,请从中选择。
我有一个以下数据(alldata),它有SQL查询和视图名称。 我已经拆分并正确地将其分配给诱惑(alldata) 当我尝试执行查询并从中注册tempview或表时,它显示空指针错误。但是当我注释掉spark时,PRINTLN显示了表中的所有值。sql语句。 但是当我用spark.sql执行它时,它会显示以下错误,请帮助我出错的地方。 19/12/09 02:43:12错误执行器:在阶段4.0任务
问题内容: 我们有一个Perl脚本,该脚本运行SQL并将数据放入表中。现在,我们不想传递一个SQL语句,而是希望传递一堆将它们放在一起的.sql文件中。我们知道我们的程序将失败,因为它期望一个SQL语句,而不是一堆SQL语句(也来自.sql文件)。我们如何使其与.sql文件(具有多个INSERT语句?)一起使用。我们正在使用DBI软件包。 一小段代码: 问题答案: 不确定您想要什么… 创建DBI对
问题内容: 这个问题已经在这里有了答案 : 将公式(方程式)存储在数据库中,以便稍后进行评估(SQL Server 2005) (4个答案) 2年前关闭。 我需要对SQL表中保存的值进行算术运算,例如,我想在下一列中将值设为5 * 10 基于等式,我需要计算值。 问题答案: 如您所知,SQL Server没有EVAL()函数。但是,只要使用一些动态SQL,就有可能, 但实际上不建议这样做 。 例子
问题内容: 大家好,我想执行我的SQL语句,但是我在synatx上遇到麻烦,有人可以帮助我了解我做错了什么吗? 谢谢,阿什。 问题答案: 您需要解决的最重要的事情是使用查询参数,而不是动态地构建字符串。这将提高性能,维护和安全性。 此外,您想使用较新的强类型ADO.Net对象。确保为添加使用指令。 注意此代码中的语句。完成连接后,他们将 确保 您的连接已关闭。这很重要,因为数据库连接是有限且不受管
大家好,我在joomla 2.5中为后端做了一个组件,但是我在执行sql查询时遇到了问题,我的变量是空的,所以它不会显示任何内容。 我有其他的文件和文件,但这里对我的问题很重要。 首先在我的controller.php我有这个内部管理文件 在我的模型文件我有restaurante.php 在我的控制器文件里我有这个 最后,在我的视图文件中,我有一个默认的tmpl文件。显示表格的php 但是元素re
题目描述 sql='select * from A',A表有8百万数据 前段时间写了数据库互相导数据的Python脚本,是Oracle导入postgreSQL,使用cx_Oracle执行execute(sql)没有任何问题。这次是postgreSQL导入postgreSQL,使用psycopg2执行execute(sql)就直接卡死在这一行了,并且内存占用持续上升。 自己的思路 数据库连接是没有问