首页>>后端>>Python->django如何使用数据库(2023年最新分享)

django如何使用数据库(2023年最新分享)

时间:2023-12-25 本站 点击:0

导读:今天首席CTO笔记来给各位分享关于django如何使用数据库的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

如何独立使用django的数据库访问功能

1. 安装Django

[plain] view plain copy

cd Django-1.4

python setup.py install

2. 安装postgresql的客户端:

[plain] view plain copy

sudo apt-get install -y postgresql-client-9.1 python-psycopg2

3. 新建project:

[plain] view plain copy

django-admin.py startproject myproject

4. 在myproject下新建app:

[plain] view plain copy

python manage.py startapp myapp

4. 新增环境变量:

编辑/etc/profile文件,在末尾加入以下语句:

[plain] view plain copy

span style="color:#FF0000;" export PYTHONPATH=$PYTHONPATH:/home/yc/src/myproject

export DJANGO_SETTINGS_MODULE=myproject.settings/span

5.

假设数据库已经由Django的另一个应用(名称为otherapp)建好,数据库类型是postgresql,名称为mydb,位于

192.168.1.23。见好的数据库中有一个表,名称是otherapp_user,则将otherapp/models.py拷贝到myapp

/models.py。

注意检查models.py下的class user类的class Meta:部分,如果没有applabel标签,则要加上:app_label='otherapp'

再修改/home/yc/src/myproject下的settings.py文件,如下:

[plain] view plain copy

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.

'NAME': 'mydb', # 'vps2db_test1' Or path to database file if using sqlite3.

'USER': 'postgres', # Not used with sqlite3.

'PASSWORD': '123', # Not used with sqlite3.

'HOST': '192.168.1.23', # Set to empty string for localhost. Not used with sqlite3.

'PORT': '5432', # Set to empty string for default. Not used with sqlite3.

}

}

[plain] view plain copy

INSTALLED_APPS = (

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.sites',

'django.contrib.messages',

'django.contrib.staticfiles',

'span style="color:#FF0000;"myapp/span',

)

6. 在myapp目录下编写测试程序

[python] view plain copy

from models import user

if __name__=="__main__":

try:

u = user.objects.get(id=user_id)

except user.DoesNotExist:

print "user not exist)

return None

else:

return u

如何在django中使用多个数据库

可以啊。不过要手工写了。在配置里将数据库路径放进去。然后在module里,自己选择相应的库与相应的model做关联。

此外还可以指定表格中的字段名。另外如果上面的方法不好用,你也可以自己直接连接数据库,自己管理。

django的数据库连接是没有连接池的。 每次访问都连接一次,效率低。不过你也可以用同样的原理 ,用mysqldb之类的库,自己建立数据库连接。

django怎么使用本机mysql数据库

step 1:

修改你的django project目录下的settings.py 文件至如下所示:

其中,'NAME' 对应的 ‘db_name' 是你事先使用mysql

的命令行提示符创建的数据库名称。注意:在django使用数据库之前,你必须先创建出数据库,否则会报错。'USER'对应的'username'

还有 'PASSWORD' 对应的‘passwd'

就是你在mysql中创建的用户名和密码。如果你有多个的话,随便填一个就好。'HOST'和'PORT'默认都可以不填。

题外话: 使用用户名和密码登录mysql的方法:

首先,你需要进入 mysql/bin的目录下,也可以在.bash_profile中设置环境变量:

PATH=/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/Cellar/mysql/5.6.22/bin/

再在prompt输入 mysql -u username -p, 回车后再输入 passwd即可

step 2:

然后,在manage.py路径中使用python manage.py syncdb 试试,结果会提示你错误找不到 MySQLdb 这个module, 为什么呢, 因为 python manage.py syncdb 命令是这样工作的:

1. 在project目录的settings.py的INSTALLED_APPS元组中找到可能需要更新的APP。

2. 找到每一个APP目录中的models.py (关系定义文件),并针对变化在数据库中进行更新。

说了这么多,前面那个错误 找不到 module MySQLdb 是什么意思啊 ?

先给个图,再解释:

因为在models.py中定义关系使用的是python,而真正在数据库中操作形成model当然一定要用sql语句,所以必须要有一些功能模块

来把python语句转化成sql语句。如果你使用sqlite的话,由于sqlite和转化模块都已经由python内置了,所以直接使用不会发生错

误。但是 ”mysql语句的转化模块“ 就需要你手动加载了,这些模块放在 MySQL-python 中。

我是使用pip 安装的:

安装了之后,再使用 python manage.py syncdb就OK啦。

我使用的系统是 OS X,下面是 mysql 默认的安装路径

/usr/local/Cellar/mysql/5.6.22/

如果你想知道你的数据库文件是放在哪里的,你可以查看mysql_config文件中的ldata变量,这个变量的值就是 默认的数据库文件夹存储的路径。 我的系统中,mysql_config的完整路径是 :

/usr/local/Cellar/mysql/5.6.22/bin/mysql_config

django怎么使用mysql数据库

方法/步骤

修改setting.py里面的DATABASES元组为

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'books', #你的数据库名称

'USER': 'root', #你的数据库用户名

'PASSWORD': '', #你的数据库密码

'HOST': '', #你的数据库主机,留空默认为localhost

'PORT': '3306', #你的数据库端口

}

}

INSTALLED_APPS = (

'books',#你的数据库名称

)

在mysql里面创建books数据库

检查配置是否有语法错误

使用python manage.py sqlall books 显示mysql语法

使用python manage.py syncdb同步模型中的数据库

创建成功!

如何在Django1.6结合Python3.4版本中使用MySql

关于Django1.6中DATABASES的设置也是一样不用做任何修改,跟以前MySQLdb的时候一样,如下所示:

1 DATABASES = {

2 'default': {

3 'ENGINE': 'django.db.backends.mysql', #数据库引擎

4 'NAME': 'test', #数据库名

5 'USER': 'root', #用户名

6 'PASSWORD': 'root', #密码

7 'HOST': '', #数据库主机,默认为localhost

8 'PORT': '', #数据库端口,MySQL默认为3306

9 'OPTIONS': {

10 'autocommit': True,

11 },

12 }

13 }

最关键的一点,在站点的__init__.py文件中,我们添加如下代码:

1 import pymysql

2 pymysql.install_as_MySQLdb()

做完上述动作后,即可在django中访问mysql了。

结语:以上就是首席CTO笔记为大家整理的关于django如何使用数据库的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于django如何使用数据库的相关内容别忘了在本站进行查找喔。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/59886.html