sqlalchemy 使用 URL.create 创建 url

创建日期: 2024-03-27 17:59 | 作者: 风波 | 浏览次数: 19 | 分类: SQLAlchemy

来源:https://docs.sqlalchemy.org/en/20/core/engines.html

from sqlalchemy import URL

url_object = URL.create(
    "postgresql+pg8000",
    username="dbuser",
    password="kx@jj5/g",  # plain (unescaped) text
    host="pghost10",
    database="appdb",
)

from sqlalchemy import create_engine

engine = create_engine(url_object)

PostgreSQL

# default
engine = create_engine("postgresql://scott:tiger@localhost/mydatabase")

# psycopg2
engine = create_engine("postgresql+psycopg2://scott:tiger@localhost/mydatabase")

# pg8000
engine = create_engine("postgresql+pg8000://scott:tiger@localhost/mydatabase")

MySQL

# default
engine = create_engine("mysql://scott:tiger@localhost/foo")

# mysqlclient (a maintained fork of MySQL-Python)
engine = create_engine("mysql+mysqldb://scott:tiger@localhost/foo")

# PyMySQL
engine = create_engine("mysql+pymysql://scott:tiger@localhost/foo")

Oracle

engine = create_engine("oracle://scott:tiger@127.0.0.1:1521/sidname")

engine = create_engine("oracle+cx_oracle://scott:tiger@tnsname")

Microsoft SQL Server

# pyodbc
engine = create_engine("mssql+pyodbc://scott:tiger@mydsn")

# pymssql
engine = create_engine("mssql+pymssql://scott:tiger@hostname:port/dbname")

SQLite

# sqlite://<nohostname>/<path>
# where <path> is relative:
engine = create_engine("sqlite:///foo.db")
# Unix/Mac - 4 initial slashes in total
engine = create_engine("sqlite:////absolute/path/to/foo.db")

# Windows
engine = create_engine("sqlite:///C:\\path\\to\\foo.db")

# Windows alternative using raw string
engine = create_engine(r"sqlite:///C:\path\to\foo.db")

Engine Creation API

Object Name Description
create_engine(url, **kwargs) Create a new Engine instance.
create_mock_engine(url, executor, **kw) Create a “mock” engine used for echoing DDL.
create_pool_from_url(url, **kwargs) Create a pool instance from the given url.
engine_from_config(configuration[, prefix], **kwargs) Create a new Engine instance using a configuration dictionary.
make_url(name_or_url) Given a string, produce a new URL instance.
URL Represent the components of a URL used to connect to a database.
19 浏览
16 爬虫
0 评论