Discover how a bimodal integration strategy can address the major data management challenges facing your organization today.
Get the Report →Natively Connect to Google Data Catalog Data in PHP
The CData ODBC driver for Google Data Catalog enables you to create PHP applications with connectivity to Google Data Catalog data. Leverage the native support for ODBC in PHP.
Drop the CData ODBC Driver for Google Data Catalog into your LAMP or WAMP stack to build Google Data Catalog-connected Web applications. This article shows how to use PHP's ODBC built-in functions to connect to Google Data Catalog data, execute queries, and output the results.
Configure a DSN
If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.
Google Data Catalog uses the OAuth authentication standard. Authorize access to Google APIs on behalf on individual users or on behalf of users in a domain.
Before connecting, specify the following to identify the organization and project you would like to connect to:
- OrganizationId: The ID associated with the Google Cloud Platform organization resource you would like to connect to. Find this by navigating to the cloud console.
Click the project selection drop-down, and select your organization from the list. Then, click More -> Settings. The organization ID is displayed on this page.
- ProjectId: The ID associated with the Google Cloud Platform project resource you would like to connect to.
Find this by navigating to the cloud console dashboard and selecting your project from the Select from drop-down. The project ID will be present in the Project info card.
When you connect, the OAuth endpoint opens in your default browser. Log in and grant permissions to the application to completes the OAuth process. For more information, refer to the OAuth section in the Help documentation.
Establish a Connection
Open the connection to Google Data Catalog by calling the odbc_connect or odbc_pconnect methods. To close connections, use odbc_close or odbc_close_all.
$conn = odbc_connect("CData ODBC GoogleDataCatalog Source","user","password");
Connections opened with odbc_connect are closed when the script ends. Connections opened with the odbc_pconnect method are still open after the script ends. This enables other scripts to share that connection when they connect with the same credentials. By sharing connections among your scripts, you can save system resources, and queries execute faster.
$conn = odbc_pconnect("CData ODBC GoogleDataCatalog Source","user","password");
...
odbc_close($conn); //persistent connection must be closed explicitly
Create Prepared Statements
Create prepared statements and parameterized queries with the odbc_prepare function.
$query = odbc_prepare($conn, "SELECT * FROM Schemas WHERE ProjectId = ?");
Execute Queries
Execute prepared statements with odbc_execute.
$conn = odbc_connect("CData ODBC GoogleDataCatalog Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM Schemas WHERE ProjectId = ?");
$success = odbc_execute($query, array('bigquery-public-data'));
Execute nonparameterized queries with odbc_exec.
$conn = odbc_connect("CData ODBC GoogleDataCatalog Source","user","password");
$query = odbc_exec($conn, "SELECT Type, DatasetName FROM Schemas WHERE ProjectId = 'bigquery-public-data'");
Process Results
Access a row in the result set as an array with the odbc_fetch_array function.
$conn = odbc_connect("CData ODBC Google Data Catalog data Source","user","password");
$query = odbc_exec($conn, "SELECT Type, DatasetName FROM Schemas WHERE ProjectId = 'bigquery-public-data'");
while($row = odbc_fetch_array($query)){
echo $row["Type"] . "\n";
}
Display the result set in an HTML table with the odbc_result_all function.
$conn = odbc_connect("CData ODBC Google Data Catalog data Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM Schemas WHERE ProjectId = ?");
$success = odbc_execute($query, array('bigquery-public-data'));
if($success)
odbc_result_all($query);
More Example Queries
You will find complete information on the driver's supported SQL in the help documentation. The code examples above are Google Data Catalog-specific adaptations of the PHP community documentation for all ODBC functions.