如何在mysql databse中使用Django读取。
我想阅读csv file data using django和write this csv data中的MySQL数据库。
发布于 2020-06-16 06:18:37
看看django-进出口,它正好涵盖了这个用例。
发布于 2020-06-18 06:21:53
无论我从你的问题中了解到什么,这就是解决办法
首先创建浏览按钮,让用户以CSV文件作为输入,然后将其存储在应用程序的static/upload folder.Then中,将该文件的路径传递给views.py中的数据存储函数。
forms.py
from django import forms
class browse(forms.Form):
file = forms.FileField()views.py
import csv
import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode
def index(request):
result = None
form = None
if request.method == 'POST':
form = browse(request.POST, request.FILES)
if form.is_valid():
handle_uploaded_file(request.FILES['file']) # store file in upload folder
path = "static/upload/"+ str(request.FILES['file'])#path of selected file
with open(path,'rt')as f:
data = csv.reader(f)
for row in data:
storedata(row)
else:
pass
def storedata(row):
connection = mysql.connector.connect(host='localhost',
database='electronics',
user='root',
password='root')
mySql_insert_query = """INSERT INTO Laptop (name, fname, lname)
VALUES
(row[0], row[1], row[2]) """
cursor = connection.cursor()
cursor.execute(mySql_insert_query)
connection.commit()
print(cursor.rowcount, "Record inserted successfully into Laptop table")
cursor.close() models.py
from django.db import models
def handle_uploaded_file(f):
with open('static/upload/'+f.name, 'wb+') as destination:
for chunk in f.chunks():
destination.write(chunk)https://stackoverflow.com/questions/62401754
复制相似问题