googleapis / python-spanner-sqlalchemy

Apache License 2.0
38 stars 28 forks source link

sqlalchemy.schema.DropTable compilation: Table name should be quoted by back quotes (`) on DROP TABLE #349

Open rkawajiri opened 8 months ago

rkawajiri commented 8 months ago

Environment details

Steps to reproduce

Execute this code.

from sqlalchemy.schema import DropTable, CreateTable
from sqlalchemy.orm import DeclarativeBase, mapped_column, Mapped
from google.cloud.sqlalchemy_spanner import SpannerDialect

class Base(DeclarativeBase):
    pass

class User(Base):
    __tablename__ = 'Users'

    id: Mapped[int] = mapped_column(primary_key=True)

print(CreateTable(User.__table__).compile(dialect=SpannerDialect()).string)
print(DropTable(User.__table__).compile(dialect=SpannerDialect()).string)

then it will print

CREATE TABLE `Users` (
    id INT64 NOT NULL
) PRIMARY KEY (id)

DROP TABLE "Users"
ankiaga commented 4 months ago

PR raised https://github.com/googleapis/python-spanner-sqlalchemy/pull/385