Django与PostgreSQL数据库的那些事

删除psql数据库:(以数据库Django名为例:)

dropdb Django;

新建数据库并属于django:

createdb Django -O django



当我们在Django中用了python manage.py syncdb后,会在PostgreSQL中新建了对应的应用的表,但是有时候会发现在admin管理平台时添加数据时出现CSRF错误。这时候,我们要采用以下操作:

python manage.py sqlsequencereset T1K   (以T1K应用为例)

然后会出现:

BEGIN:

.....

END;

COMMIT;

将上述命令复制并进入psql数据库(psql Django),将命令粘贴在命令行上,再按下ENTER键。对每一个应用如此操作。即解决此问题。



从mysql转移数据到PostgreSQL中,可采用以下方法:

先用SHELL将mysql数据库中的表内容存成一个文件:

echo "select * from table" | mysql -uroot -p123456 Django >file.txt

此时,由于换行符\r\n的原因。直接导入PostgreSQL数据库也许会报错。因此:

sed -i ‘s/\r//g‘ file.txt

最后,导入PostgreSQL数据库:命令如下:

copy "TABLE(要导入的表名)" from ‘/绝对路径/file.txt‘;

完成。



今天写了个python程序,想让它定时运行。

因此,可以如此做。在Linux系统下,

命令:

crontab -e 打开一个文件。

在该文件里,输入

*/2 * * * * /绝对路径/python /绝对路径/test.py 1>>log 2>>&1

含义是:每隔两分钟运行一次该程序。输出日志在log文件。

crontab -l命令可直接显示文件的内容。



本文出自 “蓝鳍豚” 博客,请务必保留此出处http://likunheng.blog.51cto.com/9527645/1569911

时间: 2024-10-23 04:26:41

Django与PostgreSQL数据库的那些事的相关文章

ubuntu 下搭建一个python3的虚拟环境(用于django配合postgresql数据库开发)

#安装python pip  (在物理环境中安装) sudo apt-get install python-pip       sudo apt-get install python3-pipsudo pip install --upgrade pipsudo pip3 install --upgrade pip 备注说明: python-pip 是python2版本的包管理工具   , python3-pip是python3版本的包管理工具 ,  如果你创建了一个python2的虚拟环境 ,当

Django使用postgresql数据库

1)添加新的数据库用户  create user <...> with password <...>; 2)创建数据库并指定所属用户  create database django_test owner <...>; 3)Django数据库配置 注:python环境中需安装psycopg2-binary:pip install psycopg2-binary  DATABASES = { 'default': { 'ENGINE': 'django.db.backend

django使用postgresql时提示主键冲突

在django使用postgresql数据库时,当你使用默认主键,但当你手动使用添加记录到相关数据库时(非insert操作,如使用navicate直接在表中复制粘贴记录),此时django在插入数据时,会提示主键冲突,这是因为postgresql的主键自增是建立在它内部机制工作的,你可以使用如下sql来获取或设置相关的自增ID序列: select nextval('表名_id_seq'); #此操作会获取当前基于表中最大ID,并会设置ID+1 select currval('表名_id_seq'

Django基础之数据库与ORM

一.数据库配置 1.django默认支持sqlite,mysql, oracle,postgresql数据库. django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3 引擎名称:django.db.backends.mysql 2.在django的项目中会默认使用sqlite数据库,在settings里有如下设置: DATABASES = { 'default': { 'ENGINE': 'django.db

Django之ORM数据库

5.1 数据库的配置 1    django默认支持sqlite,mysql, oracle,postgresql数据库.  <1> sqlite django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3 <2> mysql 引擎名称:django.db.backends.mysql 2    mysql驱动程序 MySQLdb(mysql python) mysqlclient MySQL Py

Django model与数据库操作对应关系(转)

? Django对数据库的操作分用到三个类:Manager.QuerySet.Model. Manager的主要功能定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manager为父类,定义自己的manager,增加表级方法: QuerySet是Manager的方法返回的,是一个可遍历结构,包含一个或多个元素,每个元素都是一个Model 实例,它里面的方法也是表级方法. Model是一条记录的类,它的功能很强大,里面包含外键实体等,它的方法都是记录级方法(都是实例方

Django项目实践3 - Django模型(数据库字段及操作)

http://blog.csdn.net/pipisorry/article/details/45725953 数据库字段 时间字段 DateTimeField和DateField和TimeField存储的内容分别对应着datetime(),date(),time()三个对象. auto_now=Ture,字段保存时会自动保存当前时间,但要注意每次对其实例执行save()的时候都会将当前时间保存,也就是不能再手动给它存非当前时间的值. auto_now_add=True,字段在实例第一次保存的时

关于Django中的数据库操作API之distinct去重的一个误传

关于Django中的数据库操作API之distinct去重的一个误传 最近在做一个Server的项目,后台框架是Apache mod_wsgi + django.django是一个基于Python的Web开发框架,功能十分强大,至于有多强大,还是读者们自己去体验吧.我在这里要说的一个问题是关于Python的ORM功能的.问题就在django提供的数据库操作API中的distinct()函数,了解SQL语句的读者都应该知道,DISTINCT关键字可以在select操作时去重.django里的这个d

Django?模型(数据库)

Django 模型(数据库) Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在settings.py中配置即可,不用更改models.py中的代码. 大家可以按照我的步骤来开始做: 1 2 3 django-admin.py startproject learn_models # 新建一个项目 cd learn_models