SQLAlchemy和Oracle-如何获取VARCHAR2列以使用BYTE而不是CHAR? [英] SQLAlchemy and Oracle - How to get VARCHAR2 columns to use BYTE and not CHAR?

查看:153
本文介绍了SQLAlchemy和Oracle-如何获取VARCHAR2列以使用BYTE而不是CHAR?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

SQLAlchemy似乎默认将VARCHAR2列创建为CHAR.如何使用BYTE创建它?

It looks like SQLAlchemy defaults to creating VARCHAR2 columns as CHAR. How can I have it create with BYTE instead?

from sqlalchemy import MetaData, Column, String
from sqlalchemy.ext.declarative import declarative_base

metadata = MetaData()
Base = declarative_base(metadata=metadata)

class Foo(Base):
    __tablename__ = 'foo'
    name = Column(String(10), primary_key=True)

Foo.__table__.create(bind=engine)

这将创建下表:

CREATE TABLE XXMD.FOO
(
  NAME  VARCHAR2(10 CHAR)                       NOT NULL
)

相反,我希望它创建以下内容:

Instead, I would like it to create the following:

CREATE TABLE XXMD.FOO
(
  NAME  VARCHAR2(10 BYTE)                       NOT NULL
)

推荐答案

感谢 查看全文

登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆