Могу ли я использовать pymssql для вставки нескольких записей в таблицу ребер в базе данных SQLGraph? - PullRequest
0 голосов
/ 05 марта 2019

Я использую Python для преобразования файла CSV в базу данных MS SQL.Данные представляют собой SQL Graph, который состоит из одной таблицы узлов и одной таблицы ребер.

Нет проблем с вставкой данных pymssql в таблицу узлов.Я создал таблицу узлов с именем Nodes и использовал следующую команду:

sql_insert = "INSERT INTO Nodes(SourceID, PROPERTYTYPE, GEOCOORD_Y, GEOCOORD_X, OTHER_JSON) VALUES (%s, %s, %s, %s, %s)"

cursor.executemany(sql_insert, sql_command_generator(distribution,"Distribution"))

conn.commit()

sql_command_generator (дистрибутив, "Distribution"), по сути, генерирует список кортежей, который помещается в заполнитель и работает хорошо.

Когда я использую подобный код для вставки записей в таблицу ребер, всегда возникает следующая ошибка:

ProgrammingError: (102, b "Неверный синтаксис рядом с сообщением об ошибке VAUES. Ошибка DB-Lib 20018, серьезность15: \ nОбщая ошибка SQL Server: проверка сообщений от SQL Server \ n ")

Для пограничной таблицы я использовал следующий код:

cursor = conn.cursor()  
sql_insert = "INSERT INTO FORWARD VALUES (?, ?)"
cursor.executemany(sql_insert, sql_command_edge_generator(edge))
conn.commit()

sql_command_edge_generator (edge) выводит следующее(список кортежей):

[('SELECT $node_id FROM Nodes WHERE SourceID = 10619',
  'SELECT $node_id FROM Nodes WHERE SourceID = 5012650'),
 ('SELECT $node_id FROM Nodes WHERE SourceID = 14301395',
  'SELECT $node_id FROM Nodes WHERE SourceID = 241A')]

Кто-нибудь сталкивался с использованием команды pymssql cursor.executemany для вставки нескольких записей в таблицу граничного графа?Большое спасибо за вашу помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...