:doc:`Glue <../../glue>` / Client / get_database

************
get_database
************



.. py:method:: Glue.Client.get_database(**kwargs)

  

  Retrieves the definition of a specified database.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetDatabase>`_  


  **Request Syntax**
  ::

    response = client.get_database(
        CatalogId='string',
        Name='string'
    )
    
  :type CatalogId: string
  :param CatalogId: 

    The ID of the Data Catalog in which the database resides. If none is provided, the Amazon Web Services account ID is used by default.

    

  
  :type Name: string
  :param Name: **[REQUIRED]** 

    The name of the database to retrieve. For Hive compatibility, this should be all lowercase.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'Database': {
              'Name': 'string',
              'Description': 'string',
              'LocationUri': 'string',
              'Parameters': {
                  'string': 'string'
              },
              'CreateTime': datetime(2015, 1, 1),
              'CreateTableDefaultPermissions': [
                  {
                      'Principal': {
                          'DataLakePrincipalIdentifier': 'string'
                      },
                      'Permissions': [
                          'ALL'|'SELECT'|'ALTER'|'DROP'|'DELETE'|'INSERT'|'CREATE_DATABASE'|'CREATE_TABLE'|'DATA_LOCATION_ACCESS',
                      ]
                  },
              ],
              'TargetDatabase': {
                  'CatalogId': 'string',
                  'DatabaseName': 'string',
                  'Region': 'string'
              },
              'CatalogId': 'string',
              'FederatedDatabase': {
                  'Identifier': 'string',
                  'ConnectionName': 'string',
                  'ConnectionType': 'string'
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Database** *(dict) --* 

        The definition of the specified database in the Data Catalog.

        
        

        - **Name** *(string) --* 

          The name of the database. For Hive compatibility, this is folded to lowercase when it is stored.

          
        

        - **Description** *(string) --* 

          A description of the database.

          
        

        - **LocationUri** *(string) --* 

          The location of the database (for example, an HDFS path).

          
        

        - **Parameters** *(dict) --* 

          These key-value pairs define parameters and properties of the database.

          
          

          - *(string) --* 
            

            - *(string) --* 
      
    
        

        - **CreateTime** *(datetime) --* 

          The time at which the metadata database was created in the catalog.

          
        

        - **CreateTableDefaultPermissions** *(list) --* 

          Creates a set of default permissions on the table for principals. Used by Lake Formation. Not used in the normal course of Glue operations.

          
          

          - *(dict) --* 

            Permissions granted to a principal.

            
            

            - **Principal** *(dict) --* 

              The principal who is granted permissions.

              
              

              - **DataLakePrincipalIdentifier** *(string) --* 

                An identifier for the Lake Formation principal.

                
          
            

            - **Permissions** *(list) --* 

              The permissions that are granted to the principal.

              
              

              - *(string) --* 
          
        
      
        

        - **TargetDatabase** *(dict) --* 

          A ``DatabaseIdentifier`` structure that describes a target database for resource linking.

          
          

          - **CatalogId** *(string) --* 

            The ID of the Data Catalog in which the database resides.

            
          

          - **DatabaseName** *(string) --* 

            The name of the catalog database.

            
          

          - **Region** *(string) --* 

            Region of the target database.

            
      
        

        - **CatalogId** *(string) --* 

          The ID of the Data Catalog in which the database resides.

          
        

        - **FederatedDatabase** *(dict) --* 

          A ``FederatedDatabase`` structure that references an entity outside the Glue Data Catalog.

          
          

          - **Identifier** *(string) --* 

            A unique identifier for the federated database.

            
          

          - **ConnectionName** *(string) --* 

            The name of the connection to the external metastore.

            
          

          - **ConnectionType** *(string) --* 

            The type of connection used to access the federated database, such as JDBC, ODBC, or other supported connection protocols.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`Glue.Client.exceptions.InvalidInputException`

  
  *   :py:class:`Glue.Client.exceptions.EntityNotFoundException`

  
  *   :py:class:`Glue.Client.exceptions.InternalServiceException`

  
  *   :py:class:`Glue.Client.exceptions.OperationTimeoutException`

  
  *   :py:class:`Glue.Client.exceptions.GlueEncryptionException`

  
  *   :py:class:`Glue.Client.exceptions.FederationSourceException`

  
  *   :py:class:`Glue.Client.exceptions.FederationSourceRetryableException`

  