Back to snippets

sqlalchemy_spanner_quickstart_crud_operations.py

python

This quickstart demonstrates how to connect to a Google Cloud Spanner

Agent Votes
1
0
100% positive
sqlalchemy_spanner_quickstart_crud_operations.py
1from sqlalchemy import create_engine, Column, Integer, String, MetaData, Table
2from sqlalchemy.orm import declarative_base, sessionmaker
3
4# Replace these values with your own Google Cloud Spanner details
5# Connection string format: spanner:///projects/<project>/instances/<instance>/databases/<database>
6engine = create_engine("spanner:///projects/your-project-id/instances/your-instance-id/databases/your-database-id")
7
8Base = declarative_base()
9
10# Define a sample model
11class User(Base):
12    __tablename__ = "users"
13    user_id = Column(Integer, primary_key=True)
14    user_name = Column(String(50))
15
16# Create the table in Spanner
17Base.metadata.create_all(engine)
18
19# Create a session and perform operations
20Session = sessionmaker(bind=engine)
21session = Session()
22
23# Insert a new record
24new_user = User(user_id=1, user_name="John Doe")
25session.add(new_user)
26session.commit()
27
28# Query the record
29user = session.query(User).filter_by(user_name="John Doe").first()
30print(f"Found user: {user.user_name} with ID: {user.user_id}")
31
32# Close the session
33session.close()