国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python - sqlalchemy 批量插入的數據,數據列不相等

瀏覽:115日期:2022-06-28 14:15:57

問題描述

# 初始化數據庫連接:engine = create_engine('xxxxx')# 創建DBSession類型:DBSession = sessionmaker(bind=engine)session = DBSession()# 測試沒有問題的數據rows_ok = [ {'name':'aaa','otherdata':'exist_col_aaa'}, {'name':'bbb','otherdata':'exist_col'},]# 測試出問題的數據rows = [ {'name':'aaa'}, {'name':'bbb','otherdata':'exist_col'},]# User中有name,otherdata字段session.execute(User.__table__.insert(),rows)session.commit()session.close()

如果批量插入數據中所有字典的key一致,則數據能保存

只要List中字典缺失一個key,會導致整個列被忽略

真實的情況列數很多,而且缺失數據也很多.有沒有解決辦法,或者使用其它方法?

或者將

rows = [ {'name':'aaa'}, {'name':'aaa'}, {'name':'aaa'}, {'name':'aaa'}, {'name':'bbb','otherdata':'exist_col',....},]

轉化為

rows = [ {'name':'aaa','otherdata':'',....}, {'name':'aaa','otherdata':'',....}, {'name':'aaa','otherdata':'',....}, {'name':'aaa','otherdata':'',....}, {'name':'bbb','otherdata':'exist_col',....},]

問題解答

回答1:

schema定義的時候, 用nullable=False

用session.add_all

標簽: Python 編程
主站蜘蛛池模板: 宜昌市| 年辖:市辖区| 高清| 长武县| 乌审旗| 会泽县| 周口市| 古浪县| 永泰县| 宜丰县| 凤台县| 益阳市| 江永县| 棋牌| 绵竹市| 明溪县| 陆川县| 华蓥市| 五家渠市| 黑水县| 桃园市| 来安县| 大埔区| 册亨县| 康平县| 舞阳县| 黔江区| 华蓥市| 始兴县| 湛江市| 资溪县| 巴马| 柞水县| 丹寨县| 焦作市| 兴国县| 澳门| 昭觉县| 安平县| 吴江市| 额尔古纳市|