python第十七次課 2018 5 11

2021-08-19 21:30:23 字數 2823 閱讀 3201

#orm思想

#需求::如果我們從資料庫查出來幾條資料,需要阿紫python表示出來

'''student id name age ***,grader

[(1,'ling',18,'m',59)

(2,'jack',16,'m',89)

(3,'ccj',17,'m',69)

]tuple  資料不可變

想知道表的結構,int  varchar  

'''# for x in student:

#     for y in student[x]:

#         student[x][y]

'''表  student

id, name, age, ***, grander 

類 module

id, name, age, ***, grander

類的屬性和表字段是一一對應的

每張表都會有乙個對應的類

[student1

student2

student3

student4

student5

student6

]獲取具體物件,便利一遍就可以了,然後通過物件的屬性獲取到對應的值

orm 思想

'''#sqlalchemy

class student(object):

def __int__(self,id,name,age,***,grander):

self.id = id

self.name = name

self.age = age

self.*** = ***

self.grander = grander

student1 = student('10001','jack',25,'m',90)

print(student1.name)

pip install sqlachemy

cus = engine.connect()  這個跟我們上節課說的游標操作一樣

'''from sqlalchemy import create_engine

engine = create_engine('mysql+pymysql:')

print(engine)

sql = '''create table student(

id int not null primary key,

name varchar(100),

age int,

address varchar(100)

);'''

cus = engine.connect()

cus.execute(sql)

cus.close()

from sqlalchemy import create_engine, column, integer, string

from sqlalchemy.ext.declarative import declarative_base

from sqlalchemy.orm import sessionmaker

engine = create_engine('mysql+pymysql:')

dbsession = sessionmaker(bind=engine)

session = dbsession()

base = declarative_base()

class student(base):

__tablename__ = 'student'

id = column(integer, primary_key=true)

name = column(string(100))

age = column(integer)

address = column(string(100))

student1 = student(id=1001, name='ling', age=25, address="beijing")

student2 = student(id=1002, name='molin', age=18, address="jiangxi")

student3 = student(id=1003, name='karl', age=16, address="suzhou")

# session.add_all([student1, student2, student3])

# session.commit()

# session.close()

a = session.query(student).filter(student.id>1001).all()

print(a)

for i in a:

print(i.id)

print(i.name)

print(i.age)

print(i.address)

'''filter和filter_by

filter_by(name="ling")  不能使用》  <  =

filter(student.id>1001)  這個就必須使用student.id  可以使用》 < =等

from sqlalchemy import create_engine

from sqlalchemy.orm import sessionmaker

from 第十七課.demon4 import student

engine = create_engine('mysql+pymysql:')

dbsession = sessionmaker(bind=engine)

session = dbsession()

session.query(student)

JAVA第十七課

一 序列化與反序列化 序列化是將物件的狀態寫入特定的流中的過程 反序列化則是從特定的流中獲取資料重新構建物件的過程 二 實現序列化的步奏 1 實現serilizable介面。2 建立物件輸出流 3 呼叫writeobject 方法將物件寫入檔案 4 關閉物件輸出流 三 常見異常 notseriali...

Linux第十七課

一 squid 八爪魚單純的 不加密 埠號為3128 支援http ftp ssl等多種協議的資料快取,可以基於訪問控制列表 acl 和訪問許可權列表 arl 執行內容過濾與許可權管理功能。正向 模式 一般用於企業區域網之中,讓企業使用者統一地通過squid服務訪問網際網路資源,可以在一定程度上減少...

第十七課 C指標(概述)

第十七課 c指標 概述 17.1 什麼是記憶體 通過指標,可以簡化一些 c 程式設計任務的執行,還有一些任務,如 動態記憶體分配 沒有指標是無法執行的。所以,想要成為一名優秀的 c 程式設計師,學習指標是很有必要的。每乙個變數都有乙個記憶體位置,每乙個記憶體位置都定義了可使用連字型大小 運算子訪問的...