Python - 将 pyodbc 代码转换为 SQLAlchemy
Python - Convert pyodbc code to SQLAlchemy
我有用于连接到 DSN 的 pyodbc 代码,但是由于某种原因它不再工作,我无法弄清楚为什么(驱动程序是空的,即使它们在那里)。
所以我想尝试将所有内容转换为使用 SQLAlchemy。
我当前连接数据库的代码是:
conn = pyodbc.connect('DSN=QueryBuilder')
cursor = conn.cursor()
stringA = "SELECT GrantInformation.Call FROM GrantInformation"
cursor.execute(stringA)
rows = cursor.fetchall()
我如何才能在 SQLAlchemy 中执行相同的操作,我已经查看了文档,但我仍然感到困惑。
非常感谢
我用过:
from sqlalchemy import create_engine
engine = create_engine("""{}://{}:{}@{}/{}"""
.format(SQL Server,nick,mypassword,myservername,querybuilder))
df = pd.read_sql_query("SELECT GrantInformation.Call FROM GrantInformation")
我得到了:
File "<ipython-input-5-f7837462519f>", line 4
.format(SQL Server,nick,mypassword,myservername,querybuilder))
^
SyntaxError: invalid syntax
之前也声明了变量,现在得到:
ArgumentError: Could not parse rfc1738 URL from string 'SQL Server://nick:mypassword@myhost/querybuilder'
from sqlalchemy import create_engine
engine = create_engine("""{}://{}:{}@{}/{}"""
.format(driver,user,password,host,database))
df = pd.read_sql_query("SELECT GrantInformation.Call FROM GrantInformation", engine)
使用以下代码格式之一创建引擎
from sqlalchemy import create_engine
# default
engine = create_engine('mysql://scott:tiger@localhost/foo')
# mysql-python
engine = create_engine('mysql+mysqldb://scott:tiger@localhost/foo')
# MySQL-connector-python
engine = create_engine('mysql+mysqlconnector://scott:tiger@localhost/foo')
# OurSQL
engine = create_engine('mysql+oursql://scott:tiger@localhost/foo')
# query
connection = engine.connect()
result = connection.execute("select username from users")
数据库名=foo,用户名=scott,密码=tiger,主机=localhost
我有用于连接到 DSN 的 pyodbc 代码,但是由于某种原因它不再工作,我无法弄清楚为什么(驱动程序是空的,即使它们在那里)。
所以我想尝试将所有内容转换为使用 SQLAlchemy。
我当前连接数据库的代码是:
conn = pyodbc.connect('DSN=QueryBuilder')
cursor = conn.cursor()
stringA = "SELECT GrantInformation.Call FROM GrantInformation"
cursor.execute(stringA)
rows = cursor.fetchall()
我如何才能在 SQLAlchemy 中执行相同的操作,我已经查看了文档,但我仍然感到困惑。
非常感谢
我用过:
from sqlalchemy import create_engine
engine = create_engine("""{}://{}:{}@{}/{}"""
.format(SQL Server,nick,mypassword,myservername,querybuilder))
df = pd.read_sql_query("SELECT GrantInformation.Call FROM GrantInformation")
我得到了:
File "<ipython-input-5-f7837462519f>", line 4
.format(SQL Server,nick,mypassword,myservername,querybuilder))
^
SyntaxError: invalid syntax
之前也声明了变量,现在得到:
ArgumentError: Could not parse rfc1738 URL from string 'SQL Server://nick:mypassword@myhost/querybuilder'
from sqlalchemy import create_engine
engine = create_engine("""{}://{}:{}@{}/{}"""
.format(driver,user,password,host,database))
df = pd.read_sql_query("SELECT GrantInformation.Call FROM GrantInformation", engine)
使用以下代码格式之一创建引擎
from sqlalchemy import create_engine
# default
engine = create_engine('mysql://scott:tiger@localhost/foo')
# mysql-python
engine = create_engine('mysql+mysqldb://scott:tiger@localhost/foo')
# MySQL-connector-python
engine = create_engine('mysql+mysqlconnector://scott:tiger@localhost/foo')
# OurSQL
engine = create_engine('mysql+oursql://scott:tiger@localhost/foo')
# query
connection = engine.connect()
result = connection.execute("select username from users")
数据库名=foo,用户名=scott,密码=tiger,主机=localhost