Vino ay hindi ORM. Oo, ito ay totoo, hindi ORM.
Magsimula
Ang isang mabilis na pagtingin sa Vino:
# Pag-setup
# Db = Vino ('engine: // user: passwd @ host: port / database')
db = Vino ('SQLite: //db.sqlite')
# Query
db.table ('user'). hanapin (username = 'lepture'). fetch ()
# Lumikha
db.table ('user') lumikha. (username = 'lepture', website = 'http: //lepture.com')
db.commit ()
# Pag-update
db.table ('user'). hanapin (username = 'lepture').-update (username = 'Hsiaoming Yang')
db.commit ()
# Tanggalin
db.table ('user'). hanapin (username = 'lepture'). tanggalin ang ()
db.commit ()
I-setup
Ay susuportahan lang namin sqlite3 at MySQL sa ngayon.
SQLite
SQLite may kamag-anak path:
db = Vino ('SQLite: //relative/path/db.sqlite')
SQLite na may ganap na path:
db = Vino ('SQLite: ///root/path/db.sqlite')
Tandaan, ito ay naiiba mula SQLAlchemy.
MySQL
MySQL sa lahat ng mga impormasyon:
db = Vino ('MySQL: // lepture: 123456 @ localhost: 3306 / test')
MySQL may mas impormasyon:
db = Vino ('MySQL: // lepture @ localhost / test')
Default na port ay 3306.
Tandaan, ito ay UTF8 sa pamamagitan ng default.
Query
Hanapin ang lahat ng data:
db.table ('user'). fetch ()
Hanapin ang lahat ng tinukoy na data:
db.table ('user'). hanapin (username = 'lepture'). fetch ()
Hanapin ang unang data:
# 1 kunin ang hindi magbabalik ng isang listahan
db.table ('user'). hanapin (username = 'lepture'). fetch (1)
Limitahan sa query:
db.table ('user'). hanapin (username = 'lepture'). fetch (5, offset = 3)
Maramihang mga filter:
db.table ('user'). hanapin (username = 'lepture', edad = 20) .fetch ()
Advanced na filter:
# Tulad lamang ng Django
db.table ('user'). hanapin (age__in = [20, 22]). fetch ()
db.table ('user'). hanapin (age__gt = 20) .fetch ()
db.table ('user'). hanapin (age__lt = 20) .fetch ()
db.table ('user'). hanapin (age__gte = 20) .fetch ()
db.table ('user'). hanapin (age__lte = 20) .fetch ()
# Pang dokumentasyon tingnan ang
Higit pang mga advanced na filter:
db.table ('user'). hanapin (age__ne = 20) .fetch () # hindi katumbas ng
db.table ('user'). hanapin (age__nin = [20, 22]). fetch () # wala sa
# Pang dokumentasyon tingnan ang
Upang query:
. db.table ('user') mahanap (edad = 20) .order ('- id'). fetch ()
Tanggalin
Tanggalin ang lahat ng data:
db.table ('user'). tanggalin ang ()
db.commit ()
Tanggalin ang tinukoy na data:
db.table ('user'). hanapin (username = 'lepture'). tanggalin ang ()
db.commit ()
Mga Kinakailangan :
- Python
Mga Komento hindi natagpuan