sqlalchemy原始增刪改查方法

2021-08-07 05:40:56 字數 2374 閱讀 7678

# -*- coding: utf-8 -*-

from sqlalchemy import create_engine

from sqlalchemy.ext.declarative import declarative_base

from sqlalchemy import column,integer,string

from sqlalchemy.orm import sessionmaker

# 建立物件的基類:

base = declarative_base()

global engine

#建立資料庫表

defcreate_all_tables

(db_type,db_host,db_port,db_name,username,password,charset="utf8"):

global engine

if db_type.upper() == "mysql":

db_uri = "mysql+mysqldb://%s:%s@%s:%s/%s?charset=%s" % (username,password,db_host,db_port,db_name,charset)

engine = create_engine(db_uri,echo=true)

# 尋找base的所有子類,按照子類的結構在資料庫中生成對應的資料表資訊

base.metadata.create_all(engine)

#返回資料庫會話

defloadsession

(): session = sessionmaker(bind=engine)

session = session()

return session

class

user

(base):

__tablename__="user"

# 表的結構:

id = column(integer,primary_key=true)

username = column(string(50),nullable=false,default="noob")

password = column(string(50),nullable=false,default="123456")

gender = column(string(1),nullable=true,default=none)

def__init__

(self,id,username,password,gender = none):

self.id = id

self.username = username

self.password = password

self.gender = gender

if __name__=="__main__":

#建表create_all_tables("mysql","localhost",3306,"test","root","123456")

#獲取資料庫會話

session = loadsession()

#增加u1 = user(id=1,username="rose",password="aaaa",gender="f")

u2 = user(id=2, username="joe", password="bbbb",gender="m")

u3 = user(id=3, username="jack", password="bbbb", gender="m")

u4 = user(id=4, username="billy", password="cccc")

session.add(u1)

session.add(u2)

session.add(u3)

session.add(u4)

session.commit()

#刪除session.query(user).filter(user.id > 2, user.gender == none).delete()

session.commit()

#修改session.query(user).filter(user.username == "jack").update()

session.commit()

#查詢#查第一行

session.query(user.id,user.username,user.password).first()

#查所有行

session.query(user.id, user.username, user.password).all()

#根據id倒序並取前兩行

session.query(user).order_by(user.id.desc()).limit(2)

使用sqlalchemy的增刪改查

from connect import base,session from sqlalchemy import column,integer,string,datetime,boolean from datetime import datetime class user base tablename...

mysql add attr mysql增刪改處理

首頁 代號姓名 性別民族 生日 db new mysqli localhost root mydb mysqli connect error or die 連線失敗!sql select from info result db query sql if result attr result fetc...

mysql增刪改查效果 mysql增刪改查

檢視所有資料庫 mysql show databases 建立乙個庫ghd並指定字符集為utp8 mysql create database ghd charset utf8 檢視mysql支援的字符集 mysql show char set 建立乙個表,並設定id為主鍵 create table ...