django 连接数据库 sqlite
Aphorism
the fight is worth it.
django models 连接 sqlite 数据库
django 版本为 1.11.7
在 blog 项目下创建一个 app article :
python manage.py startapp article
在 blog 项目结构下会多出一个 article 目录
在 article 下面的 models.py 文件中输入
from django.db import modelsclass Article(models.Model):name = models.CharField('名称',max_length = 30)age = models.CharFiels('年龄',max_length = 5)class Meta:db_table = 'Article'
step4: 在 子blog 目录中 修改 setting.py 文件
- 要连接到哪种数据库 : sqlite ? mysql? - 连接的数据库路径
下面这种配置表示:1. sqlite 数据库 和 在项目根目录下 创建一个 article.db 数据库文件2. 数据库的类型 以及 数据库的存储位置DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': os.path.join(BASE_DIR, 'article.db'),}}
- step5: 执行
python manage.py makemigrations
改动了 model.py的内容之后执行下面的命令:
python manger.py makemigrations
相当于 在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动,比如0001_initial.py, 但是这个改动还没有作用到数据库文件
cmd 中会显示
Migrations for 'article':article\migrations\0001_initial.py- Create model Article
- step6: 执行
python manage.py migrate
在第5步之后执行命令 将该models.py改动 作用到数据库文件,说明
/blog/article
数据库文件已经被改变了,生成表格或者操作了数据
cmd 中 显示:
(blog) C:\Users\by\Desktop\review\python\blog\blog>python manage.py migrate
Operations to perform:Apply all migrations: admin, article, articles, auth, contenttypes, sessions
Running migrations:Applying contenttypes.0001_initial... OKApplying auth.0001_initial... OKApplying admin.0001_initial... OKApplying admin.0002_logentry_remove_auto_add... OKApplying article.0001_initial... OKApplying articles.0001_initial... OKApplying contenttypes.0002_remove_content_type_name... OKApplying auth.0002_alter_permission_name_max_length... OKApplying auth.0003_alter_user_email_max_length... OKApplying auth.0004_alter_user_username_opts... OKApplying auth.0005_alter_user_last_login_null... OKApplying auth.0006_require_contenttypes_0002... OKApplying auth.0007_alter_validators_add_error_messages... OKApplying auth.0008_alter_user_username_max_length... OKApplying sessions.0001_initial... OK
- step7: 执行
python manage.py sqlmigrate app_name 0001
这个命令用于查看 生成的 sql语句, 这个命令相当于之前 django 版本中的
sqlall
cmd 中显示:
(blog) C:\Users\by\Desktop\review\python\blog\blog>python manage.py sqlmigrate article 0001
BEGIN;
--
-- Create model Article
--
CREATE TABLE "Article" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "name" varchar(30) NOT NULL, "age" varchar(5) NOT NULL);
COMMIT;
- step8: 执行命令
python manage.py dbshell
可以看看数据中是否生成了对应的表,显然本例子中 Article 生成,Articles 是我之前启动的另一个 app
或者sqlite3 article.db
然后.tables
也可以查看
cmd 中
(blog) C:\Users\by\Desktop\review\python\blog\blog>python manage.py dbshell
SQLite version 3.7.15.2 2013-01-09 11:53:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
Article auth_user_groups
Articles auth_user_user_permissions
auth_group django_admin_log
auth_group_permissions django_content_type
auth_permission django_migrations
auth_user
使用 python shell insert 数据到 article.db 中
- execute
python manage.py shell
进入项目的 python 命令执行环境中 使用python 语法往数据库 insert 数据
>>> from article.models import Article## 等价写法: from articles import models.Article >>> Article.objects.create(name='tom',age='12') <Article: Article object> >>> Article.objects.create(name='juice',age='13') <Article: Article object>
查看article.db 数据库:
sqlite article.db
select * from article
sqlite> select * from Article...> ;
1|tom|12
2|juice|13
sqlite>
django 连接数据库 sqlite相关推荐
- Django连接数据库以及其他的基本操作
Django连接数据库以及其他的基本操作 如何在Django中连接数据库 连接自带的数据库 在Django中连接其他的数据库 在db中创建表单 还有一种方法可以快速创建数据表 如何在Django中连接 ...
- django用sqlite跟mysql_django框架学习:九. django连接mysql,sqlite
前言 Django 对各种数据库提供了很好的支持,包括:PostgreSQL.MySQL.SQLite.Oracle.本篇以mysql为例简单介绍django连接mysql进行数据操作 Django连 ...
- django连接mysql数据库_Django学习笔记(4)——Django连接数据库
前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...
- python3 与 Django 连接数据库:Error loading MySQLdb module: No module named 'MySQLdb'
在 python2 中,使用 pip install mysql-python 进行安装连接MySQL的库,使用时 import MySQLdb 进行使用 在 python3 中,改变了连接库,改为了 ...
- django连接数据库获取数据
1.创建项目 执行代码 django-admin startproject myweb 2.创建应用 python manage.py startapp myapp 3.运行项目 python man ...
- Django+Layui+SQLite+JQuery实现一个简单的留言板
本次使用到的知识: Django框架的使用 Layui的使用 Jquery的使用 SQLite的使用 实现效果: 目录 功能结构图 准备工作 创建项目 1.创建项目 2.创建App 3.创建对应文件夹 ...
- 解决django中sqlite版本低
为什么要写这篇文章,因为我参考网上的方法没有解决了这个问题 后来在一篇文章中受到启发,但它写得过于简陋 django.core.exceptions.ImproperlyConfigured: SQL ...
- mysql oracle sqlit_【Go语言】连接数据库SQLite、MySQL、Oracle
3.Go连接Oracle 3_1.Oracle推荐驱动以及准备事项 本人的数据库相关配置是 版本11.2.0.1.0 Go版本是1.2 系统是WIN7旗舰版64位 按照下面的步骤最终连接上了oracl ...
- django连接数据库和数据迁移
django 连接mysql的配置流程: 安装 pymysql pip install pymysql 创建数据库用户 有创建数据库权限的用户 创建数据库对应的数据库 修改配置settings 修改项 ...
最新文章
- MyBatis 之 动态SQL
- linux下安装apache tomcat,Linux CentOS 7下 Apache Tomcat 7 安装与配置
- 0基础讲解机器学习算法-朴素贝叶斯分类器
- Python学习笔记:利用控制器跳转不同页面
- bzoj1088 [SCOI2005]扫雷Mine
- C#汉字转拼音帮助类
- centos7 yum install redis
- 关于加密、证书的那些事
- 打印机如何手动正反面Mac设置黑白打印
- shadow文件的MD5密码破解
- 笔记本 CPU 后面的字母 有U,H,Y,HQ,M 怎么区别?
- 从“无影”看云电脑的未来
- cv1378 选课(树)
- 上瘾读书笔记:让用户养成使用习惯的四大产品逻辑
- 虚幻4引擎2d游戏基础
- cloudera/quickstart
- 杀入预制菜赛道的陆正耀,还需戒急戒躁
- 详解康托展开与逆康托展开
- R型电焊机电源变压器的特点都有哪些?
- postman 上传文件
热门文章
- SRS4.0源码分析-SrsRecvThread::cycle
- 快速理解android View的测量onMeasure()与MeasureSpec
- 微信小程序商城搭建二手交易网站购物+后台管理系统|前后分离VUE.js
- HTML筑基知识点二
- linux netgear usb,家用四槽位 NETGEAR ReadyNAS NV+评测
- 模拟开关和数字开关的区别
- 最美春天,人间四月天
- 苹果台式一体机笔记本安装win7双系统攻略教程
- 另眼看嘀嘀:打车类应用背后的政策风险
- Spring之完整版学习笔记