как часть моего анализа настроений по твитам, мне нужно извлечь твиты из моей базы данных, запустить скрипт python, чтобы получить оценку настроений и вставить ее обратно в базу данных.Python & SQL. Вставляя переменную в столбце while for for loop
Часть моего кода:
#conneting to database (works perfect)
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=xxxxxxx\SQLEXPRESS;DATABASE=TestTwitter;UID=;PWD=')
cursor = cnxn.cursor()
#Alter table (works perfect)
cursor.execute("ALTER TABLE TestTable ADD score2 varchar(255);")
#select tweet from each row and calculate score (works perfect)
cursor.execute("SELECT TestTable.Tweet FROM TestTable")
for row in cursor.fetchall():
print (row[0])
sentim = sentiment(row[0])
print (sentim)
#update table and add sentiment score for each row (not so perfect)
cursor.execute("Update TestTable SET score2 = '" + (str(sentim)) + "';")
cnxn.commit()
При обновлении таблицы всех строки получают одинаковое значение настроения как первый твит вместо своих собственного. «Print (sentiment)» показывает оценку каждого твита один за другим, но кажется, что цикл не работает при обновлении таблицы. Любой способ исправить это?