在python中导入.sql文件

在python中导入.sql文件,python,sql,pandas,dataframe,Python,Sql,Pandas,Dataframe,我刚刚开始学习SQL,在用python导入SQL文件时遇到了一些困难 .sql文件和.py文件都在我的桌面上 这就是我迄今为止所尝试的: import codecs from codecs import open import pandas as pd sqlfile = "countries.sql" sql = open(sqlfile, mode='r', encoding='utf-8-sig').read() pd.read_sql_query("SELECT name FROM co

我刚刚开始学习SQL,在用python导入SQL文件时遇到了一些困难

.sql文件和.py文件都在我的桌面上

这就是我迄今为止所尝试的:

import codecs
from codecs import open
import pandas as pd
sqlfile = "countries.sql"
sql = open(sqlfile, mode='r', encoding='utf-8-sig').read()
pd.read_sql_query("SELECT name FROM countries")
但我收到以下错误消息:

TypeError: read_sql_query() missing 1 required positional argument: 'con'
我想我必须建立某种联系,但我找不到一种方法。将我的数据转换成一个普通的熊猫数据框会对我有很大帮助


谢谢

这是一段代码片段,摘自《应该有帮助》

import pandas as pd
import sqlite3
conn = sqlite3.connect("flights.db")
df = pd.read_sql_query("select * from airlines limit 5;", conn)
不要将数据库作为普通文件读取。它具有特定的二进制格式,应使用特殊的客户端

使用它,您可以创建能够处理SQL查询的连接。并且可以传递到
read\u sql\u query


如果需要数据库连接,请经常参阅文档。我不知道您使用的是什么SQL风格,但假设您希望在SQL server中运行查询

import pyodbc
con = pyodbc.connect(driver='{SQL Server}', server='yourserverurl', database='yourdb', trusted_connection=yes)
然后将连接实例传递给pandas

pd.read_sql_query("SELECT name FROM countries", con)
关于pyodbc的更多信息

如果要查询SQLite数据库

import sqlite3
con = sqlite3.connect('pathto/example.db')

关于sqlite的更多信息

发布的代码中使用了什么
sql
变量?什么是
countries.sql
文件?似乎是sqlite数据库,所以应该使用sqlite客户端来处理它。欲知详情