django除了他已经包装好的对数据库进行操作的语句外,也可以使用纯sql语句对数据库进行操作哦!!!
首先,.py中引入
# 模型
from DBModel.models import UserInfo
# 数据库连接
from django.db import connection
然后根据自己需求的不同可以进行sql语句拼接:
with connection.cursor() as cursor:
# 字符串拼接时,不换行用“+”,换行用“+\”
# 空格该留的要留出来,否则sql语句错误
sql = "SELECT * FROM UserInfo WHERE"
# userId为空时,则“1 = 1”永远为真,相当于没有查询条件,上面的sql语句中的where也不会报错
if len(userId) < 1:
user_id_sql = " 1 = 1"
else:
user_id_sql = " user_id = " + userId
sql = sql + user_id_sql
# 执行sql语句
cursor.execute(sql)
# cursor.fetchall() 查询结果为复数
rows = cursor.fetchall()
cursor.fetchone() 与 cursor.fetchall() 的差别在哪还没查,以后用到了再补充。