@@ -93,6 +93,30 @@ def insert_data(instance_id, database_id):
93
93
# [END spanner_insert_data]
94
94
95
95
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
+
96
120
# [START spanner_query_data]
97
121
def query_data (instance_id , database_id ):
98
122
"""Queries sample data from the database using SQL."""
@@ -1027,6 +1051,7 @@ def delete_data_with_partitioned_dml(instance_id, database_id):
1027
1051
1028
1052
subparsers = parser .add_subparsers (dest = 'command' )
1029
1053
subparsers .add_parser ('create_database' , help = create_database .__doc__ )
1054
+ subparsers .add_parser ('delete_data' , help = delete_data .__doc__ )
1030
1055
subparsers .add_parser ('insert_data' , help = insert_data .__doc__ )
1031
1056
subparsers .add_parser ('query_data' , help = query_data .__doc__ )
1032
1057
subparsers .add_parser ('read_data' , help = read_data .__doc__ )
@@ -1100,6 +1125,8 @@ def delete_data_with_partitioned_dml(instance_id, database_id):
1100
1125
create_database (args .instance_id , args .database_id )
1101
1126
elif args .command == 'insert_data' :
1102
1127
insert_data (args .instance_id , args .database_id )
1128
+ elif args .command == 'delete_data' :
1129
+ delete_data (args .instance_id , args .database_id )
1103
1130
elif args .command == 'query_data' :
1104
1131
query_data (args .instance_id , args .database_id )
1105
1132
elif args .command == 'read_data' :
0 commit comments