加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

获取行使SQLAlchemy 0.7.8和Oracle XE天生的“错误”范例

发布时间:2021-01-14 17:34:29 所属栏目:站长百科 来源:网络整理
导读:任何人都可以汇报我为什么下面的DateTime范例建设一个“DATE”工具而不是DateTime(或更恰内地,TIMESTAMP范例),由于我必需逼迫范譬喻下面的行: #!/bin/pythonimport sqlalchemyfrom sqlalchemy import Column,Integer,String,DateTime,Index,MetaDatafrom sq

任何人都可以汇报我为什么下面的DateTime范例建设一个“DATE”工具而不是DateTime(或更恰内地,TIMESTAMP范例),由于我必需逼迫范譬喻下面的行:

#!/bin/python

import sqlalchemy

from sqlalchemy import Column,Integer,String,DateTime,Index,MetaData
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship
from sqlalchemy.orm import sessionmaker
from sqlalchemy.dialects import oracle

Base = declarative_base()

import logging

logging.basicConfig()
logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO)

class TypeTest(Base):
    __tablename__ = "TYPETESTZ"
    thisisinteger = Column(Integer,primary_key = True)
    thisisnotadatetime = Column(DateTime)
    thisisdatetime = Column(oracle.TIMESTAMP)    

if __name__ == "__main__":
    engine = sqlalchemy.create_engine('oracle://richard:password@xe')
    metadata = Base.metadata
    metadata.create_all(engine)

日记输出:

INFO:sqlalchemy.engine.base.Engine:SELECT USER FROM DUAL
INFO:sqlalchemy.engine.base.Engine:{}
INFO:sqlalchemy.engine.base.Engine:SELECT table_name FROM all_tables WHERE table_name = :name AND owner = :schema_name
INFO:sqlalchemy.engine.base.Engine:{'name': u'TYPETESTZ','schema_name': u'RICHARD'}
INFO:sqlalchemy.engine.base.Engine:
CREATE TABLE "TYPETESTZ" (
    thisisinteger INTEGER NOT NULL,thisisnotadatetime DATE,thisisdatetime TIMESTAMP,PRIMARY KEY (thisisinteger)
)


INFO:sqlalchemy.engine.base.Engine:{}
INFO:sqlalchemy.engine.base.Engine:COMMIT

办理要领

Oracle没有DateTime数据范例.在Oracle中,日期包括一天(即2012年8月21日)和时刻(即下战书1:30),粒度为1秒.没有其他限制符的时刻戳只应承您将粒度增进到纳秒(10 ^ -9秒). SQLAlchemy将DateTime转换为Oracle Date好像是公道的,除非有一些要求DateTime支持小数秒(在这种环境下你必要一个时刻戳)或时区(在这种环境下你必要一个带有[local]的时刻戳)时区).

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读