我有两个字段。一个是customerid,另一个是custidref。 custidref是customerid字段的最后6位数字。我做了一个搜索,找到了一个类似的问题,并发现了这个:
Update mysql partial based on another field
虽然这个问题与我的问题相同,但我必须使用另一种方法来获取我的子字符串。我使用的是用Python编写的字典。不幸的是,我不能使用常规更新查询,因为字典基于其他人编写的库代码。我的代码就是:
for valuedict in valuedictlist:
fieldupdate=customertypedict['fieldupdate']
newaccount=valuedict['newaccount']
fieldref=customertypedict['fieldref']
if customertypedict['table']=='customer' and customertypedict['product']=='insurance':
customerobj.custidref=customerobj.customerid[-6:]
customerobj.fieldref=fieldref
customerobj.Change({'changedict':{fieldupdate:newaccount,fieldref:customerobj.custidref}})
我想知道 - 我是否根据customerid字段的更改正确更新了custidref字段?我发生的事情是custidref背后的一个更新。它不具有当前customerid的6位数字,而是具有前一个customerid的数字。
答案 0 :(得分:0)
我能够解决这个问题。我将代码更改为:
customerobj.Change({'changedict':{fieldupdate:newaccount,fieldref:newaccount[-6:]}})
根据需要抓取了6位数字,我能够消除一行代码。