@@ -94,11 +94,12 @@ def query_data(instance_id, database_id):
94
94
instance = spanner_client .instance (instance_id )
95
95
database = instance .database (database_id )
96
96
97
- results = database .execute_sql (
98
- 'SELECT SingerId, AlbumId, AlbumTitle FROM Albums' )
97
+ with database .snapshot () as snapshot :
98
+ results = snapshot .execute_sql (
99
+ 'SELECT SingerId, AlbumId, AlbumTitle FROM Albums' )
99
100
100
- for row in results :
101
- print (u'SingerId: {}, AlbumId: {}, AlbumTitle: {}' .format (* row ))
101
+ for row in results :
102
+ print (u'SingerId: {}, AlbumId: {}, AlbumTitle: {}' .format (* row ))
102
103
103
104
104
105
def read_data (instance_id , database_id ):
@@ -107,14 +108,15 @@ def read_data(instance_id, database_id):
107
108
instance = spanner_client .instance (instance_id )
108
109
database = instance .database (database_id )
109
110
110
- keyset = spanner .KeySet (all_ = True )
111
- results = database .read (
112
- table = 'Albums' ,
113
- columns = ('SingerId' , 'AlbumId' , 'AlbumTitle' ,),
114
- keyset = keyset ,)
111
+ with database .snapshot () as snapshot :
112
+ keyset = spanner .KeySet (all_ = True )
113
+ results = snapshot .read (
114
+ table = 'Albums' ,
115
+ columns = ('SingerId' , 'AlbumId' , 'AlbumTitle' ,),
116
+ keyset = keyset ,)
115
117
116
- for row in results :
117
- print (u'SingerId: {}, AlbumId: {}, AlbumTitle: {}' .format (* row ))
118
+ for row in results :
119
+ print (u'SingerId: {}, AlbumId: {}, AlbumTitle: {}' .format (* row ))
118
120
119
121
120
122
def query_data_with_new_column (instance_id , database_id ):
@@ -130,11 +132,13 @@ def query_data_with_new_column(instance_id, database_id):
130
132
instance = spanner_client .instance (instance_id )
131
133
database = instance .database (database_id )
132
134
133
- results = database .execute_sql (
134
- 'SELECT SingerId, AlbumId, MarketingBudget FROM Albums' )
135
+ with database .snapshot () as snapshot :
136
+ results = snapshot .execute_sql (
137
+ 'SELECT SingerId, AlbumId, MarketingBudget FROM Albums' )
135
138
136
- for row in results :
137
- print (u'SingerId: {}, AlbumId: {}, MarketingBudget: {}' .format (* row ))
139
+ for row in results :
140
+ print (
141
+ u'SingerId: {}, AlbumId: {}, MarketingBudget: {}' .format (* row ))
138
142
139
143
140
144
def add_index (instance_id , database_id ):
@@ -183,16 +187,18 @@ def query_data_with_index(
183
187
'start_title' : type_pb2 .Type (code = type_pb2 .STRING ),
184
188
'end_title' : type_pb2 .Type (code = type_pb2 .STRING )
185
189
}
186
- results = database .execute_sql (
187
- "SELECT AlbumId, AlbumTitle, MarketingBudget "
188
- "FROM Albums@{FORCE_INDEX=AlbumsByAlbumTitle} "
189
- "WHERE AlbumTitle >= @start_title AND AlbumTitle < @end_title" ,
190
- params = params , param_types = param_types )
191
190
192
- for row in results :
193
- print (
194
- u'AlbumId: {}, AlbumTitle: {}, '
195
- 'MarketingBudget: {}' .format (* row ))
191
+ with database .snapshot () as snapshot :
192
+ results = snapshot .execute_sql (
193
+ "SELECT AlbumId, AlbumTitle, MarketingBudget "
194
+ "FROM Albums@{FORCE_INDEX=AlbumsByAlbumTitle} "
195
+ "WHERE AlbumTitle >= @start_title AND AlbumTitle < @end_title" ,
196
+ params = params , param_types = param_types )
197
+
198
+ for row in results :
199
+ print (
200
+ u'AlbumId: {}, AlbumTitle: {}, '
201
+ 'MarketingBudget: {}' .format (* row ))
196
202
197
203
198
204
def read_data_with_index (instance_id , database_id ):
@@ -209,15 +215,16 @@ def read_data_with_index(instance_id, database_id):
209
215
instance = spanner_client .instance (instance_id )
210
216
database = instance .database (database_id )
211
217
212
- keyset = spanner .KeySet (all_ = True )
213
- results = database .read (
214
- table = 'Albums' ,
215
- columns = ('AlbumId' , 'AlbumTitle' ),
216
- keyset = keyset ,
217
- index = 'AlbumsByAlbumTitle' )
218
+ with database .snapshot () as snapshot :
219
+ keyset = spanner .KeySet (all_ = True )
220
+ results = snapshot .read (
221
+ table = 'Albums' ,
222
+ columns = ('AlbumId' , 'AlbumTitle' ),
223
+ keyset = keyset ,
224
+ index = 'AlbumsByAlbumTitle' )
218
225
219
- for row in results :
220
- print ('AlbumId: {}, AlbumTitle: {}' .format (* row ))
226
+ for row in results :
227
+ print ('AlbumId: {}, AlbumTitle: {}' .format (* row ))
221
228
222
229
223
230
def add_storing_index (instance_id , database_id ):
@@ -252,17 +259,18 @@ def read_data_with_storing_index(instance_id, database_id):
252
259
instance = spanner_client .instance (instance_id )
253
260
database = instance .database (database_id )
254
261
255
- keyset = spanner .KeySet (all_ = True )
256
- results = database .read (
257
- table = 'Albums' ,
258
- columns = ('AlbumId' , 'AlbumTitle' , 'MarketingBudget' ),
259
- keyset = keyset ,
260
- index = 'AlbumsByAlbumTitle2' )
262
+ with database .snapshot () as snapshot :
263
+ keyset = spanner .KeySet (all_ = True )
264
+ results = snapshot .read (
265
+ table = 'Albums' ,
266
+ columns = ('AlbumId' , 'AlbumTitle' , 'MarketingBudget' ),
267
+ keyset = keyset ,
268
+ index = 'AlbumsByAlbumTitle2' )
261
269
262
- for row in results :
263
- print (
264
- u'AlbumId: {}, AlbumTitle: {}, '
265
- 'MarketingBudget: {}' .format (* row ))
270
+ for row in results :
271
+ print (
272
+ u'AlbumId: {}, AlbumTitle: {}, '
273
+ 'MarketingBudget: {}' .format (* row ))
266
274
267
275
268
276
def add_column (instance_id , database_id ):
0 commit comments