@@ -251,6 +251,25 @@ static void writeExampleData(DatabaseClient dbClient) {
251251 }
252252 // [END spanner_insert_data]
253253
254+ // [START spanner_delete_data]
255+ static void deleteExampleData (DatabaseClient dbClient ) {
256+ List <Mutation > mutations = new ArrayList <>();
257+
258+ // KeySet.all() can be used to delete all the rows in a table.
259+ mutations .add (Mutation .delete ("Albums" , KeySet .all ()));
260+
261+ // KeySet.singleKey() can be used to delete one row at a time.
262+ for (Singer singer : SINGERS ) {
263+ mutations .add (
264+ Mutation .delete ("Singers" ,
265+ KeySet .singleKey (Key .newBuilder ().append (singer .singerId ).build ())));
266+ }
267+
268+ dbClient .write (mutations );
269+ System .out .printf ("Records deleted.\n " );
270+ }
271+ // [END spanner_delete_data]
272+
254273 // [START spanner_query_data]
255274 static void query (DatabaseClient dbClient ) {
256275 // singleUse() can be used to execute a single read or query against Cloud Spanner.
@@ -1077,6 +1096,9 @@ static void run(
10771096 case "write" :
10781097 writeExampleData (dbClient );
10791098 break ;
1099+ case "delete" :
1100+ deleteExampleData (dbClient );
1101+ break ;
10801102 case "query" :
10811103 query (dbClient );
10821104 break ;
@@ -1194,6 +1216,7 @@ static void printUsageAndExit() {
11941216 System .err .println ("Examples:" );
11951217 System .err .println (" SpannerExample createdatabase my-instance example-db" );
11961218 System .err .println (" SpannerExample write my-instance example-db" );
1219+ System .err .println (" SpannerExample delete my-instance example-db" );
11971220 System .err .println (" SpannerExample query my-instance example-db" );
11981221 System .err .println (" SpannerExample read my-instance example-db" );
11991222 System .err .println (" SpannerExample addmarketingbudget my-instance example-db" );
0 commit comments