2012-08-10 34 views
1

我已經編寫了一個Python腳本來解析CSV並將這些值插入到MySQL表中。 解析CSV和插入部分,如下所示:python腳本不適用於rails遷移Mysql表

csv_data = csv.reader(open(file_path, "rb")) 
data_list = [] 
count = 0 
##Loop for inserting data to table in baches 
for row in csv_data: 
    data_row = [] 
    data_row.append(row[0]) 
    data_row.append(row[1]) 
    data_row.append(row[2]) 
    ##removing the fist row 
    if count == 0: 
     count += 1 
     continue 
    else: 
     data_row.insert(0,keyword_type) 
     sql_command = "insert into "+ table_name +"(keyword_type,old_keyword_id,old_keyword_name,master_keyword_name) values (\"" +data_row[0]+"\"," + data_row[1]+ ",\"" +data_row[2]+"\",\"" +data_row[3]+"\")" 
     cursor.execute(sql_command) 

,如果我們通過使用在創建MySQL表命令手動創建表這是完全工作。

但我需要這一個軌道環境數據整合並插入到使用遷移創建一個表。但運行後程序執行成功,並沒有顯示任何錯誤。但數據並沒有輸入到表格中。這就是問題。

感謝 問候

+0

在哪裏以及如何創建表格? – 2012-08-10 08:18:56

+0

我假設'sql_command'字符串中的語法錯誤是複製/粘貼錯誤,而不是真的寫在你的代碼中? – Atli 2012-08-10 08:20:14

+0

該表是使用rails遷移技術在rails項目數據庫中創建的。 – apr 2012-08-11 10:55:30

回答

0

運行「形容[表名]」對您手動創建表,對創建的軌道,並比較結果。您很可能會發現架構有所不同。如果在此之後不清楚該怎麼做,請在此處發佈結果。