下面是我想要帮助的代码.我不得不运行超过1,300,000行,这意味着插入~300,000行需要40分钟.
我认为批量插入是加速它的路线?或者是因为我通过for data in reader:部分迭代行?
#Opens the prepped csv file
with open (os.path.join(newpath,outfile), 'r') as f:
#hooks csv reader to file
reader = csv.reader(f)
#pulls out the columns (which match the SQL table)
columns = next(reader)
#trims any extra spaces
columns = [x.strip(' ') for x in columns]
#starts SQL statement
query = 'bulk insert into SpikeData123({0}) values ({1})'
#puts column names in SQL query 'query'
query = query.format(','.join(columns), ','.join('?' * len(columns)))
print 'Query is: %s' …Run Code Online (Sandbox Code Playgroud) 我有一个在Apache服务器上工作的Django项目.
我安装了大熊猫并希望用它来开始操作数据 - 不过有些奇怪的事情正在发生.
无论何时我import pandas在生产环境中使用,服务器都会挂断并且(一段时间后)抛出408超时错误.
我可以注释掉该pandas部分,服务器正常响应而没有问题.我无法在开发环境或django的命令行界面中重新创建它.
这是httpd-app.conf文件:
Alias /tooltrack/static "C:/Users/myfolder/Bitnami Django Stack Projects/tooltrack/static/"
<Directory "C:/Users/myfolder/Bitnami Django Stack Projects/tooltrack/static/">
Options +MultiViews
AllowOverride All
<IfVersion < 2.3 >
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
</IfVersion>
<IfVersion < 2.3 >
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
</IfVersion>
</Directory>
WSGIScriptAlias / 'C:/Users/myfolder/Bitnami Django Stack projects/tooltrack/tooltrack/wsgi.py'
<Directory "C:/Users/myfolder/Bitnami Django Stack projects/tooltrack/tooltrack">
Options +MultiViews
AllowOverride All
<IfVersion …Run Code Online (Sandbox Code Playgroud) 我通过django表单向我的Django Rest Framework api提交POST请求.
这是我的表格的片段:
<form action="{% url 'entry-list' %}" method="POST" class="form" role="form">
{% csrf_token %}
{{form.as_p}}
<div class = "form-group">
<button type="submit" class="save btn btn-default btn-block">Save</button>
</div>
Run Code Online (Sandbox Code Playgroud)
views.py:
class entry_ViewSet(viewsets.ModelViewSet):
queryset = Entry.objects.all()
serializer_class= EntrySerializer
permission_classes = (permissions.IsAuthenticatedOrReadOnly,IsOwnerOrReadOnly,)
def perform_create(self, serializer):
serializer.partial = True
serializer.save(created_by=self.request.user)
Run Code Online (Sandbox Code Playgroud)
我正在成功发布POST(并且项目是在数据库中创建的),但是一旦我保存,我会转到/api/entry/显示我的api w/Markdown 的网址.我想让它回到一个特定的网址.
有没有办法自定义POST重定向到哪里成功?
添加了Serializer:
class EntrySerializer(serializers.ModelSerializer):
created_by = serializers.ReadOnlyField(source='created_by.username')
class Meta:
model = Entry
fields = '__all__'
def __init__(self, *args, **kwargs):
super(EntrySerializer, self).__init__(*args, **kwargs)
for x in self.fields: …Run Code Online (Sandbox Code Playgroud) 如果要执行以下操作:
def hashmdfive(filename):
"""Generate the md5 checksum."""
hasher = hashlib.md5()
with open(filename, "rb") as afile:
buf = afile.read()
hasher.update(buf)
return hasher.hexdigest()
Run Code Online (Sandbox Code Playgroud)
test.txt)。test.txt从远程获取哈希值不同。有谁知道为什么会这样?
python ×3
django ×2
apache ×1
bulkinsert ×1
django-forms ×1
git ×1
hash ×1
md5 ×1
mod-wsgi ×1
pandas ×1
pyodbc ×1
sql-server ×1