0
SQL 데이터를 mongodb로 가져 오는 동안 임베디드 배열로 테이블을 병합했지만 구현하는 동안 '키 오류'라는 구문 오류가 발생합니다. 다음은 제 코드입니다.pymongo : OrderedDict에서 임베디드 배열 생성 중 오류 발생
import pyodbc, json, collections, pymongo, datetime
arrayCol =[]
mongoConStr = 'localhost:27017'
sqlConStr = 'DRIVER={MSSQL-NC1311};SERVER=tcp:172.16.1.75,1433;DATABASE=devdb;UID=qauser;PWD=devuser'
mongoConnect = pymongo.MongoClient(mongoConStr)
sqlConnect = pyodbc.connect(sqlConStr)
dbo = mongoConnect.eaedw.ctArrayData
sqlCur = sqlConnect.cursor()
sqlCur.execute('''SELECT M.fldUserId ,TRU.intRuleGroupId ,TGM.strGroupName FROM TBL_USER_MASTER M
JOIN TBL_RULEGROUP_USER TRU ON M.fldUserId = TRU.intUserId
JOIN tbl_Group_Master TGM ON TRU.intRuleGroupId = TGM.intGroupId
''')
tuples = sqlCur.fetchall()
for tuple in tuples:
doc = collections.OrderedDict()
doc['fldUserId'] = tuple.fldUserId
doc['groups.gid'].append(tuple.intRuleGroupId)
doc['groups.gname'].append(tuple.strGroupName)
arrayCol.append(doc)
mongoImp = dbo.insert_many(arrayCol)
sqlCur.close()
mongoConnect.close()
sqlConnect.close()
여기서, I는 배열의 하위 문서로 gid
및 groupname
를 개최 포함 배열 이름 groups
만들려고 하였다.
append
을 사용하는 동안 오류가 발생하며, 임베디드 배열없이 성공적으로 실행됩니다. 배열 정의에 오류가 있습니까?