首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Django读取mysql数据库中的CSV文件

问如何使用Django读取mysql数据库中的CSV文件
EN

Stack Overflow用户
提问于 2020-06-16 05:51:38
回答 2查看 324关注 0票数 0

如何在mysql databse中使用Django读取。

我想阅读csv file data using django和write this csv data中的MySQL数据库。

EN

回答 2

Stack Overflow用户

发布于 2020-06-16 06:18:37

看看django-进出口,它正好涵盖了这个用例。

票数 0
EN

Stack Overflow用户

发布于 2020-06-18 06:21:53

无论我从你的问题中了解到什么,这就是解决办法

首先创建浏览按钮,让用户以CSV文件作为输入,然后将其存储在应用程序的static/upload folder.Then中,将该文件的路径传递给views.py中的数据存储函数。

forms.py

代码语言:javascript
复制
from django import forms

class browse(forms.Form):
    file = forms.FileField()

views.py

代码语言:javascript
复制
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

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62401754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档