1
내 프로젝트에서 cx_Oracle을 사용하여 오라클 데이터베이스에서 데이터를 수집 한 다음 모델이있는 SQLite 데이터베이스의 데이터와 cx_Oracle 커서의 결과를 비교해야합니다.cx_oracle 커서의 값을 django 쿼리 세트와 비교
def GetParams(self):
repo_params = Parameters.objects.filter(dbid=self.dbid).only('name','value')
sql = ("select name, value from v$parameter")
self.cur.execute(sql)
res = self.cur.fetchall()
repo_params = list(repo_params)
parameters = []
for i in res:
if i[1] not in repo_params:
new_param = Parameters(name=i[1],value=i[2])
parameters.append(new_param)
if len(parameters) > 0:
Parameters.objects.bulk_create(parameters)
하지만 실제로 수행 할 위치에 커서에서 하나를 내 SQLite 데이터베이스의 기존 내용을 병합하는 것입니다
나는 다음과 같은 실종 매개 변수를 추가 작동 코드가 있습니다. 다른 값을 가진 기존 매개 변수가 있으면 값을 업데이트해야합니다. 새로운 매개 변수 인 경우 생성해야합니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? RAW SQL을 사용하여 MERGE를 수행해야합니까?
감사합니다.