Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 104c5ff

Browse files
SQLAlchemy beginner tutorial
1 parent 0b695e4 commit 104c5ff

File tree

2 files changed

+61
-0
lines changed

2 files changed

+61
-0
lines changed

‎Programs/P80_SQLAlchemyTutorial.py

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Author: OMKAR PATHAK
2+
# This is a simple tutorial on usinng SQLAlchemy as ORM (Object Relational Mapping)
3+
4+
# Make sure you have installed SQLAlchemy using: pip3 install sqlalchemy
5+
6+
from sqlalchemy import (
7+
create_engine,
8+
Column,
9+
Integer,
10+
String
11+
)
12+
13+
from sqlalchemy.ext.declarative import declarative_base
14+
from sqlalchemy.orm import sessionmaker
15+
import os
16+
17+
18+
# create a sqlite db
19+
engine = create_engine('sqlite:///example.db', echo=True)
20+
Base = declarative_base()
21+
22+
23+
class Student(Base):
24+
__tablename__ = "student"
25+
26+
id = Column(Integer, primary_key=True)
27+
username = Column(String)
28+
firstname = Column(String)
29+
lastname = Column(String)
30+
university = Column(String)
31+
32+
def __init__(self, username, firstname, lastname, university):
33+
self.username = username
34+
self.firstname = firstname
35+
self.lastname = lastname
36+
self.university = university
37+
38+
39+
def create_tables():
40+
# create tables
41+
Base.metadata.create_all(engine)
42+
43+
44+
if __name__ == '__main__':
45+
sqlite_file = 'example.db'
46+
file_exists = os.path.isfile(sqlite_file)
47+
if not file_exists:
48+
create_tables()
49+
Session = sessionmaker(bind=engine)
50+
session = Session()
51+
52+
# Create objects
53+
user = Student('OmkarPathak', 'Omkar', 'Pathak', 'MIT')
54+
session.add(user)
55+
56+
# commit the record the database
57+
session.commit()
58+
59+
# Select objects
60+
for student in session.query(Student).order_by(Student.id):
61+
print (student.firstname, student.lastname)

‎Programs/example.db

8 KB
Binary file not shown.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /