当前位置:主页 > python教程 > django 原生sql 获取数据的实例

python django 原生sql 获取数据的方法分享

发布:2021-05-06 17:00:12 133


本站收集了一篇python相关的编程文章,网友甄文昌根据主题投稿了本篇教程内容,涉及到python、django、原生sql、数据、django 原生sql 获取数据的实例相关内容,已被771网友关注,相关难点技巧可以阅读下方的电子资料。

django 原生sql 获取数据的实例

如下所示:

node2:/django/mysite/blog#cat views.py
1,
 
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
# from django.shortcuts import render, render_to_response
from .models import *
# Create your views here.
from django.http import HttpResponse
from django.template import loader
import MySQLdb
 
def query():
  conn= MySQLdb.connect(
    host='localhost',
    port = 3306,
    user='root',
    passwd='1234567',
    db ='tlcb',
    )
  cur = conn.cursor()
  a=cur.execute("select title,body, DATE_FORMAT(timestamp,'%Y~%m~%d %k.%i.%s') A from blog_blogpost")
  info = cur.fetchall()
  return info
  cur.close()
  conn.close()
 
def archive(req):
 print 'aaaaaaaaaaaaaaaaaaaaaaaaaaa'
 print req
 print type(req)
 print req.GET
 print '#############################'
 print req.GET['aa']
 print req.GET['cc']
 print '#############################'
 print 'aaaaaaaaaaaaaaaaaaaaaaaaaaa'
# get all blogpost objects
 posts =query() 
 print posts
 print type(posts)
 #print blog_list
 template = loader.get_template('archive.html')
 context = {
 'posts':posts
 }
 print '------------------------------------------'
 print HttpResponse(template.render(context, req))
 print '------------------------------------------'
 return HttpResponse(template.render(context, req))
node2:/django/mysite/blog#
 
 
node2:/django/mysite/blog/templates#vi archive.html
node2:/django/mysite/blog/templates#
node2:/django/mysite/blog/templates#
node2:/django/mysite/blog/templates#
node2:/django/mysite/blog/templates#cat archive.html
{% extends "base.html" %} 
{% block content %}
   {% for post in posts %}
   <h2>{{ post.0 }}</h2>
   <p>{{ post.1 | date:"1,F jS"}}</p>
   <p>{{ post.2 }}</p>
   {% endfor %}
 {% endblock %}
 
 
 
(('dd', 'ddd', '2017~11~24 8.31.42'), ('66666666', '66666', '2017~11~24 8.35.25'), ('777777777', '77777777777', '2017~11~27 1.46.15'))
<type 'tuple'>
 
 
 
 
 
 
 在自定义 model 方法和模块级方法里,你可以自由的执行自定义SQL语句. 对象 django.db.connection 表示当前的数据库连接. 调用connection.cursor() 得到一个游标对象. 然后调用 cursor.execute(sql, [params])``以执行 SQL 语句, 使用 ``cursor.fetchone() 或cursor.fetchall() 得到结果集. 下面是一个例子:
def my_custom_sql(self): 
  from django.db import connection 
  cursor = connection.cursor() 
  cursor.execute("SELECT foo FROM bar WHERE baz = %s", [self.baz]) 
  row = cursor.fetchone() 
  return row 
 
    如果你的SQL语句改变了数据库中的数据 -- 比如你使用了 DELETE 或 UPDATE 语句. 你需要调用 connection.commit() 来使你的修改生效.
例子:
def my_custom_sql2(self): 
  from django.db import connection 
  cursor = connection.cursor() 
  cursor.execute("DELETE FROM bar WHERE baz = %s", [self.baz]) 
  connection.commit() 

以上这篇python django 原生sql 获取数据的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。


参考资料

相关文章

  • python实现复制文件并重命名

    发布:2021-04-08

    这篇文章主要介绍了基于python实现复制文件并重命名,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下


  • python中的lambda函数用法指南

    发布:2023-03-02

    Lambda函数是Python中的匿名函数,下面这篇文章主要给大家介绍了关于python中lambda函数用法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下


  • python使用正则表达式实现搜索单词的示例代码

    发布:2022-09-06

    为网友们分享了关于python的教程,正则表达式本身是一种小型的、高度专业化的编程语言,下面这篇文章主要给大家介绍了关于python利用正则表达式实现搜索单词的相关资料,文中给出了详细的示例代码,需要的朋友可以参考借


  • python字符串和整数相互转换的实例分享

    发布:2020-06-17

    今天小编就为大家分享一篇python 字符串和整数的转换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • 为什么说python是强类型语言

    发布:2020-02-12

    语言的强弱是对于数据的类型而言的,Python在这里是强类型的动态脚本语言,Python中不允许不同类型的数据进行相加。


  • 总结python3实现二叉树的遍历及递归算法

    发布:2020-03-13

    这篇文章主要介绍了python3实现二叉树的遍历与递归算法解析(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习


  • pygraphviz安装教程

    发布:2023-03-28

    Graphviz 是一款由 AT&T Research 和 Lucent Bell 实验室开源的可视化图形工具,可以很方便的用来绘制结构化的图形网络,支持多种格式输出,这篇文章主要介绍了pygraphviz安装教程,需要的朋友可以参考下


  • 实例分析python SVM 线性分类模型的实现

    发布:2020-02-26

    这篇文章主要介绍了python SVM 线性分类模型的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


网友讨论