数据库链接方式ORM

时间:2022-01-06 02:54:04

数据库链接方式ORM

 

Mysql原生连接
1.连接数据库
conn = connect(
host=‘localhost’,
port=3306,
database=‘python_db’,
user=‘root’,
password=‘123123’,
charset=‘utf8’)
2.获取游标
cur = conn.cursor()
3.数据库操作
操作: sql_str = ‘’‘delete from students where name=‘王钢蛋’; ‘’’
执行:row_count = cur.execute(sql_str)
提交: conn.commit()
获取查询结果:result = cur.fetchall()
4.关闭游标
cur.close()
5.关闭数据库
conn.close()

MysqlORM连接
Flask
Mysql
Flask的SQLALchemy连接
SQLALCHEMY_DATABASE_URI = ‘mysql pymysql://用户名:密码@IP:端口号/数据库’
SQLALCHEMY_DATABASE_URI = ‘mysql pymysql://haitang:[email protected]:3306/test’
注册到app中
app.config[‘SQLALCHEMY_DATABASE_URI’]
创建sqlalchemy实例
db = SQLAlchemy(app)
把实例添加到manager
manager.add_command(‘db’,MigrateCommand)
配置默认redis
REDIS_HOST = “127.0.0.1” IP
REDIS_PORT = 6379 端口
REDIS_NUM = 8 第几个数据库
SECRET_KEY = “ASLKDJALKSJDALSDJALKSDJASLKDJ98AD9” 加密字符串
SESSION_TYPE = ‘redis’ 通过flask-session包,将flask的session存储位置从内存调整到redis的配置信息
SESSION_REDIS = StrictRedis(host=REDIS_HOST, port=REDIS_PORT, db=REDIS_NUM) 实例一个对象
SESSION_USE_SIGNER = True 开启数据库加密操作
SESSION_PERMANENT = False 取消永久存储
PERMANENT_SESSION_LIFETIME = 86400 设置默认有效时长
实例一个对象
redis_store =StrictRedis(host=REDIS_HOST, port=REDIS_PORT, db=REDIS_NUM)
使用
redis_store.setex(键,有效时间,值)

Django
Mysql
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘HOST’: ‘127.0.0.1’, # 数据库主机
‘PORT’: 3306, # 数据库端口
‘USER’: ‘root’, # 数据库用户名
‘PASSWORD’: ‘mysql’, # 数据库用户密码
‘NAME’: ‘django_demo’ # 数据库名字
}
}
redis
配置:CACHES = {
“sms_code”: {
“BACKEND”: “django_redis.cache.RedisCache”,
“LOCATION”: “redis://127.0.0.1:6379/0”,
“OPTIONS”: {
“CLIENT_CLASS”: “django_redis.client.DefaultClient”,
}




}
连接:redis_cli = get_redis_connection(‘sms_code’)