python Django 操作数据库 sqlite

#导入包

 from django.db import connection

 

#使用cursor()方法获取操作游标

cursor=connection.cursor()

# 使用execute方法执行sq l语句

cursor.execute('select * from a')

#使用fetchone()方法获取一条数据

data=cursor.fetchon()

#关闭连接

cursor.close()

 

常用方法:

fetchone():获取下一个查询结果集。结果集是一个对象

fetchall():接收全部的返回结果行

rowcount:这是一个只读属性,并返回执行execute()方法后影响的行数

 

 

用例:

if event.first().status!=2:
   guest= Guest.objects.filter(phone=phone_number)
   if guest.exists():
      cursor=connection.cursor()
      cursor.execute('select * from a_table where guest_id={g_id} and event_id={e_id}'.format(g_id=guest.first().id,e_id=event.first().id))
      results = cursor.fetchall()
      if results:
         try:
           cursor.execute('update a_table set sign=1 where guest_id={g_id} and event_id={e_id}'.format(g_id=guest.first().id,e_id=event.first().id))
           r={'error_code':0}
           print('rowcount={count}'.format(count=cursor.rowcount))
         except:
           #connection.rollback()
           r={"error_code":100014}
      # db.close()
      else:
       r={"error_code":10010}
    #关闭数据库
      
      connection.close()
   else:
       r={'error_code':10008}
else:

   r= {"error_code":10009}

 

 

你可能感兴趣的:(python,django)