@@ -57,6 +57,7 @@ dfprices = pd.read_csv(
5757 )
5858)
5959
60+ # Your SQLite Cloud connection string
6061conn = sqlitecloud.connect(" sqlitecloud://myhost.sqlite.cloud:8860/mydatabase.sqlite?apikey=myapikey" )
6162
6263conn.executemany(" DROP TABLE IF EXISTS ?" , [(" PRICES" ,)])
@@ -76,3 +77,61 @@ query_result = df_actual_prices.query("PRICE > 50.00")
7677print (query_result)
7778```
7879
80+ ## Using SQLite Cloud with SQLAlchemy
81+
82+ ``` bash
83+ pip install sqlalchemy-sqlitecloud
84+ ```
85+
86+ ``` python
87+ import sqlalchemy
88+ from sqlalchemy import Column, ForeignKey, Integer, String
89+ from sqlalchemy.dialects import registry
90+ from sqlalchemy.orm import backref, declarative_base, relationship, sessionmaker
91+
92+ Base = declarative_base()
93+
94+
95+ class Artist (Base ):
96+ __tablename__ = " artists"
97+
98+ ArtistId = Column(" ArtistId" , Integer, primary_key = True )
99+ Name = Column(" Name" , String)
100+ Albums = relationship(" Album" , backref = backref(" artist" ))
101+
102+
103+ class Album (Base ):
104+ __tablename__ = " albums"
105+
106+ AlbumId = Column(" AlbumId" , Integer, primary_key = True )
107+ ArtistId = Column(" ArtistId" , Integer, ForeignKey(" artists.ArtistId" ))
108+ Title = Column(" Title" , String)
109+
110+ # Your SQLite Cloud connection string
111+ connection_string = " sqlitecloud://myhost.sqlite.cloud:8860/mydatabase.sqlite?apikey=myapikey"
112+
113+ engine = sqlalchemy.create_engine(connection_string)
114+ Session = sessionmaker(bind = engine)
115+ session = Session()
116+
117+ name = " John Doe"
118+ query = sqlalchemy.insert(Artist).values(Name = name)
119+ result_insert = session.execute(query)
120+
121+ title = " The Album"
122+ query = sqlalchemy.insert(Album).values(
123+ ArtistId = result_insert.lastrowid, Title = title
124+ )
125+ session.execute(query)
126+
127+ query = (
128+ sqlalchemy.select(Artist, Album)
129+ .join(Album, Artist.ArtistId == Album.ArtistId)
130+ .where(Artist.ArtistId == result_insert.lastrowid)
131+ )
132+
133+ result = session.execute(query).fetchone()
134+
135+ print (" Artist Name: " + result[0 ].Name)
136+ print (" Album Title: " + result[1 ].Title)
137+ ```
0 commit comments