sqlite可视化工具以及django-South
在linux系统下想要可视化sqlite的办法
一:安装sqlitebrowser:
sudo apt-get install sqlitebrowser
二:在终端提示符后输入sqlitebrowser启动图形界面:


django的syncdb命令缺陷在于并不能将模型的修改或删除同步到数据库,因此造成了比较大的不方便,下面我们来介绍一个高大上的工具South:
第一步安装South。
第二步将south放在installed中:

第三步syncdb,建立south表,成功后会多出一个表并给出如下提示


此时我们新建一个app ‘southtut’,在models.py中写入:

敲入命令:./manage.py schemamigration southtut --initial

选中shift+enter:输入southtut --initial,终端显示

此时在app下多了一个文件夹用来存档:

此时sqlite数据库里面尚无Knight表,这时需要合并

输入app名称例如southtut,这是合并结束,数据库里出现这个表格

如果Knight有改动的话,例如

这时输入命令:./manage.py schemamigration southtut --auto


从输出的提示可以看到, south已经为你增加了新的迁移记录文件 (0002_auto__add_field_knight_dances_whenever_able.py), south的命名方式是序列号+所做的更改. 接下来, 我们根据提示, 使用migrate命令修改数据库:


此时就将改动保存至数据库了。
我们再改动一下,增加一列:

此时再执行schemamigration, 会出现一些没有见过的选择:

其中选项1意思是, 放弃本次自动迁移, 并退出, 你可以在field中添加default值后再执行schemamigration. 选项2的意思是, 为已经存在的行添加一个一次性的值. 当你选择2时, 会出现python提示行, 你可以使用python的datetime模块:

此时你可以查看自动生成的迁移记录文件, south会为新建的栏添加默认值0, 这样数据库才不会报错. 然后我们再执行migrate即可。
如果在项目起始的时候没有使用south,那我们可以按以下方式启用:
一:加入south,syncdb创建south_igratitonhistory表。
二:python manage.py convert_to_south youappname在youappname目录下面创建migrations目录
以后即可正常使用。

另外south还提供回溯功能:在migrate中指定app及回溯py文件即可:manage.py migrate southtut 0001_initial.py:

如果South在同步数据库的过程中出现错误,则migrations目录下面对应此次更改的python文件不会被执行,可以运行python manage.py migrate --list查看没有执行的py文件,文件名前面没有*表示该文件对应的更改没有反应到数据库,只需删除掉这些有问题的migrate,参照错误提示修改 models再同步即可,也可以直接更改对应的py文件修复错误

深入化数据迁移:
数据迁移是用来改变你的数据库中存储的数据匹配一个新的模式,或特性。
http://www.cnblogs.com/BeginMan/p/3325897.html
demo:
http://blog.csdn.net/watsy/article/details/11965019
1)创建一个没有数据库的新项目时
1、创建数据库
2、将south添加到INSTALLED_APPS
3、运行syncdb命令,它将django和south的数据表加入到数据库中
4、将你创建的apps添加到INSTALLED_APPS
5、对每个app分别运行“python manage.py schemamigration app_name --initial”,它将在每个app的目录下创建migration目录和相应的文件
6、然后运行“python manage.py migrate app_name”,这一步将app的数据表加入到数据库中
2)在带有数据库的已存项目中使用south
1、将south加入到INSTALLED_APPS中
2、运行syncdb,它将south的数据表加入到数据库中
3、对每个app分别运行python manage.py schemamigration app_name --initial,它将在每个app的目录下创建migration目录和相应的文件
4、对每个app分别运行“python manage.py migrate app_name 0001 --fake”,该命令不会对数据库做任何操作,只是欺骗一下south,让它在south_migrationhistory表中添加一些记录以便于下次你想创造migration文件的时候所有东西都已搞定。
3、在没有数据库的已存项目中使用south
1)创建数据库
2)将south加入到INSTALLED_APPS中
3)对每个app分别运行“python manage.py schemamigration app_name --initial”,它将在每个app的目录下创建migration目录和相应的文件
4)运行syncdb,它将所有没有migrations的apps加入到数据库中
5)然后运行“python manage.py migrate”命令,它将对你的所有apps运行迁移操作。
sqlite可视化工具以及django-South的更多相关文章
- Sqlite可视化工具sqliteman安装(转)
Sqlite可视化工具sqliteman安装 1.安装前准备 系统要求:RedHat 6.9 Qt库版本:4.2及以上 2.安装文件 采用源码方式安装 可用下面地址自行下载 https://s ...
- Mac终端查看sqlite3数据库、表数据等(含sqlite可视化工具下载)
背景: 有时候,我们在用FMDB等库处理iOS数据库时,沙盒里保存的数据库格式为.sqlite3. 那么,我们如何查看这个数据库呢? 其实有两种方法: 1.借助工具 - Sqlite Database ...
- SQLite可视化工具SQLite studio
特点: 1.轻量级2.独立性,没有依赖,无需安装3.隔离性 全部在一个文件夹系统4.跨平台 支持众多操作系统5.多语言接口 支持众多编程语言6.安全性 事物,通过独占性和共享锁来实现独立事务的处理,多 ...
- sqlite可视化工具推荐
软件名称:SQLite Expert 下载地址:http://www.sqliteexpert.com/download.html 下载免费的Personal版本就可以了 我试用了SQLite Exp ...
- ubuntu 安装 Sqlite 和 可视化工具 SqliteBroswer
ubuntu 安装 Sqlite 和 可视化工具 SqliteBroswer 下载sqlite www.sqlite.org/download.html 安装Sqlite 创建一个目录: ...
- 【SQLite】可视化工具SQLite studio
SQLite数据库的特性 特点: 1.轻量级2.独立性,没有依赖,无需安装3.隔离性 全部在一个文件夹系统4.跨平台 支持众多操作系统5.多语言接口 支持众多编程语言6.安全性 事物,通过独占性和共享 ...
- SQLite实现数据库的储存2+SQLite数据库可视化工具SQLite Stadio
今日所学 SQLite实现数据库的储存 查看数据库的两种方法 Android 中 SQLite 数据库的查看 - woider - 博客园 SQLite Studio安装教程 [SQLite]可视化工 ...
- 使用强大的可视化工具redislive来监控我们的redis,别让自己死的太惨~~~
作为玩windows的码农,在centos上面装点东西,真的会崩溃的要死,,,我想大家也知道,在centos上面,你下载的是各种源代码,需要自己编译...而 使用yum的话,这个吊软件包有点想nuge ...
- CentOS6安装各种大数据软件 第九章:Hue大数据可视化工具安装和配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
随机推荐
- ASCII码图
图片转ASCII码图 效果图 基本思路 把图片每个像素点的信息拿出来,最重要的是拿到rgb的值 把每个像素点由rgb转成灰度图像,即0-255 给0-255分级,把每个等级的像素点转换成ascii ...
- python数据库连接
现在装python基本都内置了sqlite连接,写成如下形式即可 from sqlite3 import dbapi2 as sqlite 如果需要insert或update东西,之后的cur必须co ...
- 使用Docker构建持续集成与自动部署的Docker集群
为什么使用Docker " 从我个人使用的角度讲的话 部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...
- Sicily-1153 解题报告
一.原题中文大意. 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
- TMT行业分析师
诚聘英才 - 传媒梦工场 TMT行业分析师 工作经验: 2年以上 发布日期: 2013-01-04 最低学历: 本科 管理经验: 否 工作性质: 全职 招聘人数: 1人 职位类别: 金融 ...
- Python:2D画图库matplotlib学习总结
本文为学习笔记----总结!大部分为demo.一部分为学习中遇到的问题总结.包含怎么设置标签为中文等.matlab博大精深.须要用的时候再继续吧. Pyplot tutorial Demo地址为:点击 ...
- 【翻译自mos文章】oracle支持在RDBMS HOME 下的 符号链接( Symbolic Links)吗?
oracle支持在RDBMS HOME 下的 符号链接( Symbolic Links)吗? 參考原文: Does Oracle support Symbolic Links in the RDBMS ...
- 【转】Configuring VM Acceleration on Linux
Configuring VM Acceleration on Linux Linux-based systems support virtual machine acceleration throug ...
- C#语言基础之运算符
运算符分类.优先级 运算符:一.数学运算符:+,-,*,/,++,-- 示例1: 示例2: 示例3: 1.递增运算符:++(1)前缀递增运算符 int x=4; x++;//输出结果,x的 ...
- Java排序之排序大综合
一.最近写了一些排序,于是和和大家分享一下:(默认都是从小到大排序) 二.冒泡排序 1.什么是冒泡排序:原理是临近的两个数比较大小,将较大的数往后移,这样遍历一趟数组以后,最大的数就排在的最后面(时间 ...