spark-instrumented-optimizer/docs/sql-ref-syntax-ddl-alter-database.md
Dilip Biswal 74527868b2 [SPARK-28789][DOCS][SQL] Document ALTER DATABASE command
### What changes were proposed in this pull request?
Document ALTER DATABSE statement in SQL Reference Guide.

### Why are the changes needed?
Currently Spark lacks documentation on the supported SQL constructs causing
confusion among users who sometimes have to look at the code to understand the
usage. This is aimed at addressing this issue.

### Does this PR introduce any user-facing change?
Yes.

**Before:**
There was no documentation for this.

**After.**
<img width="1234" alt="Screen Shot 2019-08-28 at 1 51 13 PM" src="https://user-images.githubusercontent.com/14225158/63891854-fc817580-c99a-11e9-918e-6b305edf92e6.png">
<img width="1234" alt="Screen Shot 2019-08-28 at 1 51 27 PM" src="https://user-images.githubusercontent.com/14225158/63891869-0acf9180-c99b-11e9-91a4-04d870474a40.png">

### How was this patch tested?
Tested using jykyll build --serve

Closes #25523 from dilipbiswal/ref-doc-alterdb.

Lead-authored-by: Dilip Biswal <dbiswal@us.ibm.com>
Co-authored-by: Xiao Li <gatorsmile@gmail.com>
Signed-off-by: Xiao Li <gatorsmile@gmail.com>
2019-08-28 15:30:38 -07:00

62 lines
2.6 KiB
Markdown

---
layout: global
title: ALTER DATABASE
displayTitle: ALTER DATABASE
license: |
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
---
### Description
You can alter metadata associated with a database by setting `DBPROPERTIES`. The specified property
values override any existing value with the same property name. Please note that the usage of
`SCHEMA` and `DATABASE` are interchangable and one can be used in place of the other. An error message
is issued if the database is not found in the system. This command is mostly used to record the metadata
for a database and may be used for auditing purposes.
### Syntax
{% highlight sql %}
ALTER {DATABASE | SCHEMA} database_name SET DBPROPERTIES (propery_name=property_value, ...);
{% endhighlight %}
### Parameters
<dl>
<dt><code><em>database_name</em></code></dt>
<dd>Specifies the name of the database to be altered.</dd>
</dl>
### Examples
{% highlight sql %}
-- Creates a database named `inventory`.
CREATE DATABASE inventory;
-- Alters the database to set properties `Edited-by` and `Edit-date`.
ALTER DATABASE inventory SET DBPROPERTIES ('Edited-by' = 'John', 'Edit-date' = '01/01/2001');
-- Verify that properties are set.
DESCRIBE DATABASE EXTENDED inventory;
+-------------------------+--------------------------------------------+
|database_description_item|database_description_value |
+-------------------------+--------------------------------------------+
|Database Name |inventory |
|Description | |
|Location |file:/temp/spark-warehouse/inventory.db |
|Properties |((Edit-date,01/01/2001), (Edited-by,John)) |
+-------------------------+--------------------------------------------+
{% endhighlight %}
### Related Statements
- [DESCRIBE DATABASE](sql-ref-syntax-aux-describe-database.html)