pycharm连接数据库:
-pycharm作为数据库的客户端
django连接数据库:
1,配置文件
# 默认是SQLit 3 的配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# MySQL的配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'dbname', #注意这里的数据库应该以utf-8编码
'USER': 'xxx',
'PASSWORD': 'xxx',
'HOST': '',
'PORT': '',
}
}
# 对于python3的使用者们还需要再加一步操作
# 由于Django内部连接MySQL时使用的是MySQLdb模块,而python3中还无此模块,所以需要使用pymysql来代替
2.# 如下设置放置的与project同名的配置的 __init__.py文件中;也可以在应用名下的__init__.py中书写
import pymysql
pymysql.install_as_MySQLdb()
# PostgreSQL配置
DATABASES = {
'default': {
'NAME': 'app_data',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'XXX',
'PASSWORD': 'XXX'
}
# Oracle配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': 'xe',
'USER': 'a_user',
'PASSWORD': 'a_password',
'HOST': '',
'PORT': '',
}
}
orm:
---对象关系映射
类 表
对象 数据
对象点属性 字段对应的值
功能: 能够让不会数据库操作的人也能够简单方便去操作数据库
缺点:封装程度太高 有时候会出现查询效率偏低的问题
复杂的 追速度 需要手动书写sql语句
django中如何操作orm:
书写模型类
去应用下的models.py中书写模型类(就是类)
注意:django项目的时候 一个django就对应一个数据库
数据同步:
对数据库内的数据作出修改后,必须执行数据库迁移(同步)命令
命令:
1.python manage.py makemigrations
将数据库的修改 记录到小本本上(migrations文件内)
2.python manage.py migrate
将修改操作真正的同步到数据库中
注意:
1.上面两条命令必须是成双成对出现
2.只要修改了models里面跟数据库相关的代码 你就必须重新执行上面两条命令
模型表字段的增删改查:
字段的修改
直接修改代码 然后执行数据库迁移命令即可(两条一条不能少)
# 方式1 设置默认值
email = models.EmailField(default='123@qq.com') # varchar
# 方式2 允许字段为空
phone = models.BigIntegerField(null=True)
# 直接在提示中给默认值
gender = models.CharField(max_length=32)
#字段的删除
直接注释掉对应的字段 然后再执行数据库迁移命令即可(谨慎使用)
注意: 创建字段的数据类型时,主键默认不创建,则django自动创建(引擎为Innodb),主键为id 自增
#创建字段:
nid = models.AutoField(primary_key=True)
username = models.CharField(max_length=32) #char 要设置max_length()
email = models.EmailField(default='123@qq.com')
phone = models.BigIntegerField(null=True)
memo = models.TextField()
原文:https://www.cnblogs.com/shaozheng/p/11913540.html