Alembic을 사용하여 데이터베이스의 열 유형을 문자열에서 정수로 변경하고 싶습니다. 나는 순수 SQL을 사용하는 경우에는 목표 달성 :Alembic/SQLAchemy에서 USING 절을 사용하는 방법?
alter table statistic_ticket alter column tags type bigint using tags::bigint;
을하지만 같은 증류기를 사용하는 경우 : SQLAlchemy의에 의해 생성
HINT: Please use USING clause for carrying out the conversion
SQL 문 :
import sqlalchemy as sa
def upgrade():
op.alter_column('statistic_ticket', 'tags', nullable = True, existing_type=sa.String(length=255), type_=sa.Integer, existing_nullable=True)
나는 오류가 발생했습니다 :
ALTER TABLE statistic_ticket ALTER COLUMN tags TYPE INTEGER' {}
칼슘 n 누군가가 alembic 또는 SQLAlchemy의 SQL을 op.execute(SQL)
을 통해 수행하는 방법을 보여 줍니까?
이 동일한 주제에 게시 한 [다른 질문] (http://stackoverflow.com/questions/20687151/how-to-use-using-clause-in-alembic) 나는이 질문을 PostgreSQL에 태깅했다. 그 질문은 다른 질문을 태그 한 것이기 때문에. 다른 데이터베이스에 태그를 지정 했으므로 사용중인 데이터베이스가 Postgresql인지 확인할 수 있습니까? 감사합니다 –
감사합니다, 그것은 sqlalchemy/alembic postgresql에 그 USING 절을 지원하지 않는 것 같습니다. – SieuTruc
해당 정보의 최종 출처를 찾았습니까? 그렇다면 Alembic이 "USING"절을 지원하지 않는다는 것을 나타내는 자신의 질문에 답변을 추가하고 소스를 포함시킨 다음 질문에 대한 대답으로 대답을 표시하는 것이 좋습니다. –