@@ -93,6 +93,30 @@ def insert_data(instance_id, database_id):
9393# [END spanner_insert_data]
9494
9595
96+ # [START spanner_delete_data]
97+ def delete_data (instance_id , database_id ):
98+ """Deletes sample data from the given database.
99+
100+ The database, table, and data must already exist and can be created using
101+ `create_database` and `insert_data`.
102+ """
103+ spanner_client = spanner .Client ()
104+ instance = spanner_client .instance (instance_id )
105+ database = instance .database (database_id )
106+
107+ singers_to_delete = spanner .KeySet (
108+ keys = [[1 ], [2 ], [3 ], [4 ], [5 ]])
109+ albums_to_delete = spanner .KeySet (
110+ keys = [[1 , 1 ], [1 , 2 ], [2 , 1 ], [2 , 2 ], [2 , 3 ]])
111+
112+ with database .batch () as batch :
113+ batch .delete ('Albums' , albums_to_delete )
114+ batch .delete ('Singers' , singers_to_delete )
115+
116+ print ('Deleted data.' )
117+ # [END spanner_delete_data]
118+
119+
96120# [START spanner_query_data]
97121def query_data (instance_id , database_id ):
98122 """Queries sample data from the database using SQL."""
@@ -1027,6 +1051,7 @@ def delete_data_with_partitioned_dml(instance_id, database_id):
10271051
10281052 subparsers = parser .add_subparsers (dest = 'command' )
10291053 subparsers .add_parser ('create_database' , help = create_database .__doc__ )
1054+ subparsers .add_parser ('delete_data' , help = delete_data .__doc__ )
10301055 subparsers .add_parser ('insert_data' , help = insert_data .__doc__ )
10311056 subparsers .add_parser ('query_data' , help = query_data .__doc__ )
10321057 subparsers .add_parser ('read_data' , help = read_data .__doc__ )
@@ -1100,6 +1125,8 @@ def delete_data_with_partitioned_dml(instance_id, database_id):
11001125 create_database (args .instance_id , args .database_id )
11011126 elif args .command == 'insert_data' :
11021127 insert_data (args .instance_id , args .database_id )
1128+ elif args .command == 'delete_data' :
1129+ delete_data (args .instance_id , args .database_id )
11031130 elif args .command == 'query_data' :
11041131 query_data (args .instance_id , args .database_id )
11051132 elif args .command == 'read_data' :
0 commit comments