

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 名稱與識別碼
<a name="r_names"></a>

名稱可用來識別資料庫物件，包括資料表和資料欄，以及使用者和密碼。*名稱*和*識別碼*這兩個詞可互換使用。識別碼有兩種：標準識別碼和引號 (或區隔) 識別碼。識別碼必須只能包含 UTF-8 可列印字元。標準識別碼和區隔識別碼中的 ASCII 字母，應區分大小寫，而且在資料庫中轉換為小寫。在查詢結果中，欄的名稱預設會以小寫傳回。若要以大寫傳回欄的名稱，請將 [describe\$1field\$1name\$1in\$1uppercase](r_describe_field_name_in_uppercase.md) 組態參數設定為 **true**。

## 標準識別碼
<a name="r_names-standard-identifiers"></a>

標準 SQL 識別碼需遵守一套規則，而且必須：
+ 開頭為 ASCII 單位元組字母字元、底線字元或 UTF-8 多位元組字元 (長度 2 到 4 位元組)。
+ 後續的字元可以是 ASCII 單位元組字母字元、底線字元、金額符號或 UTF-8 多位元組字元 (長度 2 到 4 位元組)。
+ 讓長度介於 1 到 127 個位元組之間，不包括區隔識別碼的引號。
+ 不包含引號和空格。
+ 不能是保留的 SQL 關鍵字。

## 區隔識別碼
<a name="r_names-delimited-identifiers"></a>

區隔識別碼 (也稱為引號識別碼) 是以雙引號 (") 開頭和結尾。如果使用區隔識別碼，則每次參考該物件，都必須使用雙引號。除了雙引號本身以外，識別碼可包含任何標準 UTF-8 可列印字元。因此，您可以建立欄或資料表的名稱，其中包含無效字元，例如空格或百分比符號。

區隔識別碼中的 ASCII 字母，應區分大小寫，並且轉換為小寫。若要在字串中使用雙引號，必須在其前面加上另一個雙引號字元。

## 區分大小寫的識別碼
<a name="r_names-case-sensitive-identifiers"></a>

區分大小寫的識別碼 (也稱為混合大小寫識別碼) 可以同時包含大寫和小寫字母。若要使用區分大小寫的識別碼，您可以將組態 `enable_case_sensitive_identifier` 設定為 `true`。您可以為叢集或工作階段設定此組態。如需詳細資訊，請參閱《Amazon Redshift 管理指南》**中的[預設參數值](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html#default-param-group-values)和[enable\$1case\$1sensitive\$1identifier](r_enable_case_sensitive_identifier.md)。

## 系統欄名稱
<a name="r_names-system-column-names"></a>

下列 PostgreSQL 系統欄名稱不能做為使用者定義欄的欄名稱使用。如需詳細資訊，請參閱 [https://www.postgresql.org/docs/8.0/static/ddl-system-columns.html](https://www.postgresql.org/docs/8.0/static/ddl-system-columns.html)。
+ `oid`
+ `tableoid`
+ `xmin`
+ `cmin`
+ `xmax`
+ `cmax`
+ `ctid`

## 範例
<a name="r_names-examples"></a>

下表顯示區隔識別碼的範例、產生的輸出和說明：

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/dg/r_names.html)

若要建立名為 group 的資料表，而且此資料表包含名為 this "is it" 的欄：

```
create table "group" (
"This ""IS IT""" char(10));
```

下列的查詢會傳回相同的結果：

```
select "This ""IS IT"""
from "group";

this "is it"
--------------
(0 rows)
```

```
select "this ""is it"""
from "group";

this "is it"
--------------
(0 rows)
```

下列的完整 `table.column` 語法，也會傳回相同的結果：

```
select "group"."this ""is it"""
from "group";

this "is it"
--------------
(0 rows)
```

下列的 CREATE TABLE 命令會建立資料欄名稱中有一條斜線的資料表：

```
create table if not exists city_slash_id(
                  "city/id" integer not null,
                  state char(2) not null);
```