pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

  1. <i id='kPjoJ'><tr id='kPjoJ'><dt id='kPjoJ'><q id='kPjoJ'><span id='kPjoJ'><b id='kPjoJ'><form id='kPjoJ'><ins id='kPjoJ'></ins><ul id='kPjoJ'></ul><sub id='kPjoJ'></sub></form><legend id='kPjoJ'></legend><bdo id='kPjoJ'><pre id='kPjoJ'><center id='kPjoJ'></center></pre></bdo></b><th id='kPjoJ'></th></span></q></dt></tr></i><div class="yuswkyo" id='kPjoJ'><tfoot id='kPjoJ'></tfoot><dl id='kPjoJ'><fieldset id='kPjoJ'></fieldset></dl></div>

    <tfoot id='kPjoJ'></tfoot>
      <legend id='kPjoJ'><style id='kPjoJ'><dir id='kPjoJ'><q id='kPjoJ'></q></dir></style></legend>

      <small id='kPjoJ'></small><noframes id='kPjoJ'>

      • <bdo id='kPjoJ'></bdo><ul id='kPjoJ'></ul>
    1. 使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用

      Error while using INSERT INTO table ON DUPLICATE KEY, using a for loop array(使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組)
      <legend id='38RpI'><style id='38RpI'><dir id='38RpI'><q id='38RpI'></q></dir></style></legend>

          <tbody id='38RpI'></tbody>
          <i id='38RpI'><tr id='38RpI'><dt id='38RpI'><q id='38RpI'><span id='38RpI'><b id='38RpI'><form id='38RpI'><ins id='38RpI'></ins><ul id='38RpI'></ul><sub id='38RpI'></sub></form><legend id='38RpI'></legend><bdo id='38RpI'><pre id='38RpI'><center id='38RpI'></center></pre></bdo></b><th id='38RpI'></th></span></q></dt></tr></i><div class="qqggy22" id='38RpI'><tfoot id='38RpI'></tfoot><dl id='38RpI'><fieldset id='38RpI'></fieldset></dl></div>

          <small id='38RpI'></small><noframes id='38RpI'>

          <tfoot id='38RpI'></tfoot>

            • <bdo id='38RpI'></bdo><ul id='38RpI'></ul>
              • 本文介紹了使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                我正在使用 pyspark 框架更新 mysql 數據庫,并在 AWS Glue 服務上運行.

                I am working on updating a mysql database using pyspark framework, and running on AWS Glue services.

                我有一個如下的數據框:

                I have a dataframe as follows:

                df2= sqlContext.createDataFrame([("xxx1","81A01","TERR NAME 55","NY"),("xxx2","81A01","TERR NAME 55","NY"),("x103","81A01","TERR NAME 01","NJ")], ["zip_code","territory_code","territory_name","state"])
                
                # Print out information about this data
                df2.show()
                +--------+--------------+--------------+-----+
                |zip_code|territory_code|territory_name|state|
                +--------+--------------+--------------+-----+
                |    xxx1|         81A01|  TERR NAME 55|   NY|
                |    xxx2|         81A01|  TERR NAME 55|   NY|
                |    x103|         81A01|  TERR NAME 01|   NJ|
                +---------------------------------------------
                

                我有一個主鍵 ZIP_CODE,我需要確保沒有重復鍵或主鍵異常,因此我使用 INSERT INTO .... ON DUPLICATE KEYS.

                I have a primary key ZIP_CODE, and I need to ensure, there is no duplicate keys, or primary key exceptions, and hence am using INSERT INTO .... ON DUPLICATE KEYS.

                而且由于我有不止一行要插入/更新,所以我在 python 中使用了數組來循環記錄,并對數據庫執行 INSERT.代碼如下:

                And since I have more than one rows to insert/update, I have used for array in python to loop through the records, and perform INSERT into database. The code is as follows:

                sarry = df2.collect()
                for r in sarry:
                     db = MySQLdb.connect("xxxx.rds.amazonaws.com", "username", "password", 
                      "databasename")
                     cursor = db.cursor()
                     insertQry=INSERT INTO ZIP_TERR(zip_code, territory_code, territory_name, 
                     state) VALUES(r.zip_code, r.territory_code, r.territory_name, r.state) ON 
                     DUPLICATE KEY UPDATE territory_name = VALUES(territory_name), state = 
                     VALUES(state);"
                     n=cursor.execute(insertQry)
                     db.commit()
                     db.close()
                

                在運行上述插入查詢函數時,我收到以下錯誤消息,無法獲得有關錯誤的任何線索.請幫忙.

                When running the above insert query function, I am getting the following error message, couldn't get any clue on the error. Please help.

                Traceback (most recent call last):
                  File "/tmp/zeppelin_pyspark-2291407229037300959.py", line 367, in <module>
                    raise Exception(traceback.format_exc())
                Exception: Traceback (most recent call last):
                  File "/tmp/zeppelin_pyspark-2291407229037300959.py", line 360, in <module>
                    exec(code, _zcUserQueryNameSpace)
                  File "<stdin>", line 8, in <module>
                  File "/usr/local/lib/python2.7/site-packages/pymysql/cursors.py", line 170, in execute
                    result = self._query(query)
                  File "/usr/local/lib/python2.7/site-packages/pymysql/cursors.py", line 328, in _query
                    conn.query(q)
                  File "/usr/local/lib/python2.7/site-packages/pymysql/connections.py", line 893, in query
                    self._affected_rows = self._read_query_result(unbuffered=unbuffered)
                  File "/usr/local/lib/python2.7/site-packages/pymysql/connections.py", line 1103, in _read_query_result
                    result.read()
                  File "/usr/local/lib/python2.7/site-packages/pymysql/connections.py", line 1396, in read
                    first_packet = self.connection._read_packet()
                  File "/usr/local/lib/python2.7/site-packages/pymysql/connections.py", line 1059, in _read_packet
                    packet.check_error()
                  File "/usr/local/lib/python2.7/site-packages/pymysql/connections.py", line 384, in check_error
                    err.raise_mysql_exception(self._data)
                  File "/usr/local/lib/python2.7/site-packages/pymysql/err.py", line 109, in raise_mysql_exception
                    raise errorclass(errno, errval)
                InternalError: (1054, u"Unknown column 'r.zip_code' in 'field list'")
                

                如果我只是嘗試打印一行的值,則會按如下方式打印值:

                If i simply try to print the values for one row, am getting the values printed as follows:

                print('zip_code_new: ', r.zip_code, r.territory_code, r.territory_name, r.state)
                
                zip_code_new:  xxx1 81A01 TERR NAME 55 NY
                

                謝謝.我正在研究 AWS Glue/Pyspark,所以我需要使用原生 Python 庫.

                Thanks. I am working on AWS Glue/Pyspark, so I need to use native python libraries.

                推薦答案

                以下插入查詢有效,帶有 for 循環.

                The following insert query works, with a for loop.

                insertQry="INSERT INTO ZIP_TERR(zip_code, territory_code, territory_name, state) VALUES(%s, %s, %s, %s) ON DUPLICATE KEY UPDATE territory_name = %s, state = %s;
                
                n=cursor.execute(insertQry, (r.zip_code, r.territory_code, r.territory_name, r.state, r.territory_name, r.state))
                print (" CURSOR status :", n)
                

                結果輸出:

                CURSOR status : 2
                

                謝謝.希望對大家有所參考.

                Thanks. Hope this will be of reference to others.

                這篇關于使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                How to use windowing functions efficiently to decide next N number of rows based on N number of previous values(如何有效地使用窗口函數根據 N 個先前值來決定接下來的 N 個行)
                reuse the result of a select expression in the quot;GROUP BYquot; clause?(在“GROUP BY中重用選擇表達式的結果;條款?)
                Does ignore option of Pyspark DataFrameWriter jdbc function ignore entire transaction or just offending rows?(Pyspark DataFrameWriter jdbc 函數的 ignore 選項是忽略整個事務還是只是有問題的行?) - IT屋-程序員軟件開發技
                Error while using INSERT INTO table ON DUPLICATE KEY, using a for loop array(使用 INSERT INTO table ON DUPLICATE KEY 時出錯,使用 for 循環數組)
                pyspark mysql jdbc load An error occurred while calling o23.load No suitable driver(pyspark mysql jdbc load 調用 o23.load 時發生錯誤 沒有合適的驅動程序)
                How to integrate Apache Spark with MySQL for reading database tables as a spark dataframe?(如何將 Apache Spark 與 MySQL 集成以將數據庫表作為 Spark 數據幀讀取?)
                  <tbody id='NhzvA'></tbody>

                <small id='NhzvA'></small><noframes id='NhzvA'>

                <tfoot id='NhzvA'></tfoot>
                  <bdo id='NhzvA'></bdo><ul id='NhzvA'></ul>

                  1. <i id='NhzvA'><tr id='NhzvA'><dt id='NhzvA'><q id='NhzvA'><span id='NhzvA'><b id='NhzvA'><form id='NhzvA'><ins id='NhzvA'></ins><ul id='NhzvA'></ul><sub id='NhzvA'></sub></form><legend id='NhzvA'></legend><bdo id='NhzvA'><pre id='NhzvA'><center id='NhzvA'></center></pre></bdo></b><th id='NhzvA'></th></span></q></dt></tr></i><div class="00k20k2" id='NhzvA'><tfoot id='NhzvA'></tfoot><dl id='NhzvA'><fieldset id='NhzvA'></fieldset></dl></div>

                      <legend id='NhzvA'><style id='NhzvA'><dir id='NhzvA'><q id='NhzvA'></q></dir></style></legend>

                          主站蜘蛛池模板: 杭州实验室尾气处理_实验台_实验室家具_杭州秋叶实验设备有限公司 | 铣床|万能铣床|立式铣床|数控铣床|山东滕州万友机床有限公司 | 亚克力制品定制,上海嘉定有机玻璃加工制作生产厂家—官网 | 重庆监控_电子围栏设备安装公司_门禁停车场管理系统-劲浪科技公司 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 升降炉_真空气氛炉_管式电阻炉厂家-山东中辰电炉有限公司 | 天津电机维修|水泵维修-天津晟佳机电设备有限公司 | 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 土壤养分检测仪_肥料养分检测仪_土壤水分检测仪-山东莱恩德仪器 大型多片锯,圆木多片锯,方木多片锯,板材多片锯-祥富机械有限公司 | 活性氧化铝球|氧化铝干燥剂|分子筛干燥剂|氢氧化铝粉-淄博同心材料有限公司 | 免联考国际MBA_在职MBA报考条件/科目/排名-MBA信息网 | 废水处理-废气处理-工业废水处理-工业废气处理工程-深圳丰绿环保废气处理公司 | 有机废气处理-rto焚烧炉-催化燃烧设备-VOC冷凝回收装置-三梯环境 | 领先的大模型技术与应用公司-中关村科金| 在线PH计-氧化锆分析仪-在线浊度仪-在线溶氧仪- 无锡朝达 | 上海质量认证办理中心 | 深圳办公室装修,办公楼/写字楼装修设计,一级资质 - ADD写艺 | GAST/BRIWATEC/CINCINNATI/KARL-KLEIN/ZIEHL-ABEGG风机|亚喜科技 | 一体化污水处理设备,一体化污水设备厂家-宜兴市福源水处理设备有限公司 | 头条搜索极速版下载安装免费新版,头条搜索极速版邀请码怎么填写? - 欧远全 | 北京网站建设首页,做网站选【优站网】,专注北京网站建设,北京网站推广,天津网站建设,天津网站推广,小程序,手机APP的开发。 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 煤粉取样器-射油器-便携式等速飞灰取样器-连灵动 | 回转窑-水泥|石灰|冶金-巩义市瑞光金属制品有限责任公司 | 网站建设-临朐爱采购-抖音运营-山东兆通网络科技 | 一氧化氮泄露报警器,二甲苯浓度超标报警器-郑州汇瑞埔电子技术有限公司 | 恒温恒湿试验箱厂家-高低温试验箱维修价格_东莞环仪仪器_东莞环仪仪器 | Akribis直线电机_直线模组_力矩电机_直线电机平台|雅科贝思Akribis-杭州摩森机电科技有限公司 | 沧州友城管业有限公司-内外涂塑钢管-大口径螺旋钢管-涂塑螺旋管-保温钢管生产厂家 | 手表腕表维修保养鉴定售后服务中心网点 - 名表维修保养 | 整车VOC采样环境舱-甲醛VOC预处理舱-多舱法VOC检测环境仓-上海科绿特科技仪器有限公司 | 高通量组织研磨仪-多样品组织研磨仪-全自动组织研磨仪-研磨者科技(广州)有限公司 | 洛阳装修公司-洛阳整装一站式品牌-福尚云宅装饰 | 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 太原装修公司_山西整装家装设计_太原室内装潢软装_肖邦家居 | 机器视觉检测系统-视觉检测系统-机器视觉系统-ccd检测系统-视觉控制器-视控一体机 -海克易邦 | 压力控制器,差压控制器,温度控制器,防爆压力控制器,防爆温度控制器,防爆差压控制器-常州天利智能控制股份有限公司 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 蒸汽吸附分析仪-进口水分活度仪|康宝百科 | 滁州高低温冲击试验箱厂家_安徽高低温试验箱价格|安徽希尔伯特 | 宏源科技-房地产售楼系统|线上开盘系统|售楼管理系统|线上开盘软件 |