Dataflow read all
Stay organized with collections
Save and categorize content based on your preferences.
Use SQL queries with the Dataflow connector to read data from all available tables in a database.
Explore further
For detailed documentation that includes this code sample, see the following:
Code sample
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License
, and code samples are licensed under the Apache 2.0 License
. For details, see the Google Developers Site Policies
. Java is a registered trademark of Oracle and/or its affiliates.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[],null,["# Dataflow read all\n\nUse SQL queries with the Dataflow connector to read data from all available tables in a database.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Import, export, and modify data using Dataflow](/spanner/docs/dataflow-connector)\n\nCode sample\n-----------\n\n### Java\n\n\nTo learn how to install and use the client library for Spanner, see\n[Spanner client libraries](/spanner/docs/reference/libraries).\n\n\nTo authenticate to Spanner, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n PCollection\u003cStruct\u003e allRecords =\n pipeline\n .apply(\n SpannerIO.read()\n .withSpannerConfig(spannerConfig)\n .withBatching(false)\n .withQuery(\n \"SELECT t.table_name FROM information_schema.tables AS t WHERE t\"\n + \".table_catalog = '' AND t.table_schema = ''\"))\n .apply(\n MapElements.into(TypeDescriptor.of(ReadOperation.class))\n .via(\n (SerializableFunction\u003cStruct, ReadOperation\u003e)\n input -\u003e {\n String tableName = input.getString(0);\n return ReadOperation.create().withQuery(\"SELECT * FROM \" + tableName);\n }))\n .apply(SpannerIO.readAll().withSpannerConfig(spannerConfig));\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=spanner)."]]