第三章(附录)----python-django下mysql的使用

我一直在安装MySQLdb,一直,都不知道搞了多久,后来,后来的后来,md!!!!!!!!!!才知道py3早就不支持这个了,MySQLdb在py3中已被pyMySQl取代了,绝望做了好多无用功,估计mysql-python也是这样的,要不然为何人家就更新到2.7的版本就不更新了。所以,如果你在py3的版本下被mysql-python或者MySQldb折磨,那么久果断放弃吧,明明就有pymysql这样好安又好用的东西和外面那些妖艳贱货不一样,不一样!非得在其他树上吊死不成,好吧,现在上代码,

    废话就不讲了,pymysql的具体使用方法,自行百度吧,皮卡丘,重点下面

import pymysql
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='yyyy', db='pytohn',charset = "utf8",cursorclass=pymysql.cursors.DictCursor)
cur = db.cursor()
cur.execute("SELECT VERSION()")
data = cur.fetchone()
print("Database version : %s " % data)
db.close()

如果你的pymysql报错:tuple no model .......cursor  ,

对,看仔细了,找不到cursor,

然后你看看你的参数最后有没有向我给的,一定要有最后一个参数 cursorclass = pymysql.cursor.DictCursor


Django下面pymysql的使用:

1、在sitting文件中配置database

 

最后那一行我也不知道是干什么的存在

注意:USER等等等。。。。都要大写,大写!,我也不知道为什么。要不然会出现以下错误:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)。鬼知道这是为什么(好像把大佬们都骂了一遍)

2、在init中配置mysql链接方式,指定链接方式为pymysql,而不是默认的MySQLdb(py3中mysqldb很难启动)

import pymysql
pymysql.install_as_MySQLdb()

就这样,然后python manage.py runserver,就OK了



当不使用数据库作为存储,而是储存在项目本地时就不用连接数据库,只需要,在默认条件下制作数据迁移

1、在model.py 中制作数据字段

from django.db import models

# Create your models here.
class Ariticle(models.Model):
    title = models.CharField(max_length=20,default="title")
    content = models.TextField(null=True)

2、在工程目录下执行数据迁移

python manage.py makemigrations appname(最后一个参数可选,如果不指定项目名称的话就会将工程中所有项目都制作数据迁移)

然后是python manage.py migrate 

这样就自动将数据生成到本地的项目目录下的migrate目录下面,



3、可以在命令行查看生成的数据

python manage.py sqlmigrate appname(blog) tablename(0001)

4、真正的数据表是在mysql里面,这个要使用专门的数据库软件才可以将它打开

5、注意在mysql中新建数据库时一定要选择Unicode utf-8


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值