Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions docs/Compatibillity_Features/1_parameter_settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ tags:
---


## Parameter Names and Values
The parameter settings take the same approach as native PostgreSQL. All parameter names are case-insensitive. Every parameter takes a value of one of five types: boolean, string, integer, floating point, or enumerated (enum).
| Parameter | Description|
| ----------- | ----------- |
| ivorysql.compatible_mode | Indicates which database (pg/oracle) is currently compatible with, which can be viewed through the show command. The set command changes this variable, and the reset command resets it to the database mode at the time of connection. Resetting all will affect this variable|
| ivorysql.database_mode | Indicates the current database schema (pg/oracle), which can be viewed through the show command. The set/reset/reset all command does not affect this variable|
| ivorysql.datetime_ignore_nls_mask | Indicates whether the date format will be affected by the NLS parameter. The default value is 0, which can be set using the set command. The reset command resets the date format, and the reset all command resets the variable|
| ivorysql.enable_emptystring_to_NULL | The value is (on/off), and when this variable is on, it will convert the inserted empty string into a NULL value for storage|
| ivorysql.identifier_case_switch | Set character case conversion mode|
| ivorysql.listen_address | Indicates the address for compatibility mode |listening. When initializing the database, read the configuration from the ivorysql.conf file, modify the value in the configuration file, and restart the database to take effect. This can be viewed through the show command|
| ivorysql.port | Indicates the port number for connecting in compatibility mode. When initializing the database, read the configuration from the ivorysql.conf file and modify the value in the configuration file. To take effect, restart the database and view it through the show command|
| nls_date_format | Represents the default date format, which can be viewed through the show command and defaults to 'YYYY-MM-DD'. It can be set through the set command and reset back to the default value through the reset command. The reset all command will reset this variable|
| nls_length_semantics | Compatible with oracle parameters of the same name, controlling the size of memory occupied by a character|
| nls_timestamp_format | Compatible with oracle parameters of the same name, controlling date format with time|
| nls_timestamp_tz_format | Compatible with oracle parameters of the same name, controlling the date format with time zone|
| shared_preload_libraries | When initializing the database, read from the ivorysql.conf file and view it through the show command. Modify the value in the configuration file and restart the database to take effect.|


### `compatible_mode (enum)`
This parameter controls the behavior of the database server. The default value is `postgres` which indicates that it's native installation and the server will behave as native PG installation. If it's set to `oracle` then the output of the queries and system behavior overall changes, as it's expected to be more like Oracle.

When set to `oracle`, this parameter adds a schema of the same name to the `search_path` implicitly.
So that Oracle compatible objects can be located.

The parameter can be set through the `postgresql.conf` configuration file to take effect for the whole cluster. Or it can be set on session based through the client using the `set` command.


### `nls_length_semantics (enum)`
This parameter controls how to create `CHAR` and `VARCHAR2` columns based on length semantics. The default is set to `NONE` which does not effect anything. `BYTE` can be set to store data with byte length semantics. `CHAR` to use the char length semantics.
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ tags:
---


## 参数名称和值
参数设置采用与原生 PostgreSQL 相同的方法。 所有参数名称都不区分大小写。 每个参数都采用以下五种类型之一的值:布尔值、字符串、整数、浮点数或枚举 (enum)。


### `compatible_mode (enum)`
此参数控制数据库服务器的行为。 默认值为 `postgres`,表示它是原生安装,服务器将作为原生 PG 安装。 如果它设置为“oracle”,那么查询的输出和系统行为整体会发生变化,因为它会更像 Oracle。

当设置为 `oracle` 时,此参数会隐式地将同样名字的Schema添加到 `search_path`。
以便可以定位 Oracle 兼容对象。

该参数可以通过`postgresql.conf`配置文件设置,对整个数据库生效。 或者可以通过客户端使用 `set` 命令在会话上进行设置。


### `nls_length_semantics (enum)`
此参数控制如何根据长度语义创建`CHAR`和`VARCHAR2`列。 默认设置为`NONE`,这不会产生任何影响。 `BYTE` 可以设置为以字节长度语义存储数据。 `CHAR` 使用字符长度语义。
| 参数名 | 描述 |
| ----------- | ----------- |
| ivorysql.compatible_mode | 表示当前兼容哪种数据库(pg/oracle),可以通过show命令查看,set命令更改该变量,reset命令重置为连接时的数据库模式,reset all会影响该变量 |
| ivorysql.database_mode | 表示当前数据库的模式(pg/oracle),可以通过show命令查看,set/reset/reset all命令不影响该变量|
| ivorysql.datetime_ignore_nls_mask | 表示日期格式是否会受NLS参数影响,默认为0,可以通过set命令设置,reset 命令重置,reset all命令会重置该变量|
| ivorysql.enable_emptystring_to_NULL | 取值为(on/off),该变量为on时,会将插入的空字符串转成NULL值存储|
| ivorysql.identifier_case_switch | 设置字符大小写转换模式|
| ivorysql.listen_address | 表示兼容模式监听的地址,在初始化数据库时,从ivorysql.conf文件中读取该配置,在配置文件中修改该值,需要重启数据库生效,可以通过show命令查看|
| ivorysql.port | 表示兼容模式下连接的端口号,在初始化数据库时,从ivorysql.conf文件中读取该配置,在配置文件中修改该值,需要重启数据库生效,可以通过show命令查看|
| nls_date_format | 表示默认的日期格式,可以通过show命令查看,默认为‘YYYY-MM-DD’,可以通过set命令设置,可以通过reset命令重置回默认值,reset all 命令会重置该变量|
| nls_length_semantics | 兼容Oracle的同名参数,控制一个字符所占内存的大小|
| nls_timestamp_format | 兼容Oracle的同名参数,控制带时间的日期格式|
| nls_timestamp_tz_format | 兼容Oracle的同名参数,控制带时区的日期格式|
| shared_preload_libraries | 在初始化数据库时,从ivorysql.conf文件中读取,可以通过show命令查看,在配置文件中修改该值,重启数据库生效。|
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,17 @@ tags:
---


## 参数名称和值
参数设置采用与原生 PostgreSQL 相同的方法。 所有参数名称都不区分大小写。 每个参数都采用以下五种类型之一的值:布尔值、字符串、整数、浮点数或枚举 (enum)。


### `compatible_mode (enum)`
此参数控制数据库服务器的行为。 默认值为 `postgres`,表示它是原生安装,服务器将作为原生 PG 安装。 如果它设置为“oracle”,那么查询的输出和系统行为整体会发生变化,因为它会更像 Oracle。

当设置为 `oracle` 时,此参数会隐式地将同样名字的Schema添加到 `search_path`。
以便可以定位 Oracle 兼容对象。

该参数可以通过`postgresql.conf`配置文件设置,对整个数据库生效。 或者可以通过客户端使用 `set` 命令在会话上进行设置。


### `nls_length_semantics (enum)`
此参数控制如何根据长度语义创建`CHAR`和`VARCHAR2`列。 默认设置为`NONE`,这不会产生任何影响。 `BYTE` 可以设置为以字节长度语义存储数据。 `CHAR` 使用字符长度语义。
| 参数名 | 描述 |
| ----------- | ----------- |
| ivorysql.compatible_mode | 表示当前兼容哪种数据库(pg/oracle),可以通过show命令查看,set命令更改该变量,reset命令重置为连接时的数据库模式,reset all会影响该变量 |
| ivorysql.database_mode | 表示当前数据库的模式(pg/oracle),可以通过show命令查看,set/reset/reset all命令不影响该变量|
| ivorysql.datetime_ignore_nls_mask | 表示日期格式是否会受NLS参数影响,默认为0,可以通过set命令设置,reset 命令重置,reset all命令会重置该变量|
| ivorysql.enable_emptystring_to_NULL | 取值为(on/off),该变量为on时,会将插入的空字符串转成NULL值存储|
| ivorysql.identifier_case_switch | 设置字符大小写转换模式|
| ivorysql.listen_address | 表示兼容模式监听的地址,在初始化数据库时,从ivorysql.conf文件中读取该配置,在配置文件中修改该值,需要重启数据库生效,可以通过show命令查看|
| ivorysql.port | 表示兼容模式下连接的端口号,在初始化数据库时,从ivorysql.conf文件中读取该配置,在配置文件中修改该值,需要重启数据库生效,可以通过show命令查看|
| nls_date_format | 表示默认的日期格式,可以通过show命令查看,默认为‘YYYY-MM-DD’,可以通过set命令设置,可以通过reset命令重置回默认值,reset all 命令会重置该变量|
| nls_length_semantics | 兼容Oracle的同名参数,控制一个字符所占内存的大小|
| nls_timestamp_format | 兼容Oracle的同名参数,控制带时间的日期格式|
| nls_timestamp_tz_format | 兼容Oracle的同名参数,控制带时区的日期格式|
| shared_preload_libraries | 在初始化数据库时,从ivorysql.conf文件中读取,可以通过show命令查看,在配置文件中修改该值,重启数据库生效。|
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,19 @@ tags:
---


## Parameter Names and Values
The parameter settings take the same approach as native PostgreSQL. All parameter names are case-insensitive. Every parameter takes a value of one of five types: boolean, string, integer, floating point, or enumerated (enum).

| Parameter | Description|
| ----------- | ----------- |
| ivorysql.compatible_mode | Indicates which database (pg/oracle) is currently compatible with, which can be viewed through the show command. The set command changes this variable, and the reset command resets it to the database mode at the time of connection. Resetting all will affect this variable|
| ivorysql.database_mode | Indicates the current database schema (pg/oracle), which can be viewed through the show command. The set/reset/reset all command does not affect this variable|
| ivorysql.datetime_ignore_nls_mask | Indicates whether the date format will be affected by the NLS parameter. The default value is 0, which can be set using the set command. The reset command resets the date format, and the reset all command resets the variable|
| ivorysql.enable_emptystring_to_NULL | The value is (on/off), and when this variable is on, it will convert the inserted empty string into a NULL value for storage|
| ivorysql.identifier_case_switch | Set character case conversion mode|
| ivorysql.listen_address | Indicates the address for compatibility mode |listening. When initializing the database, read the configuration from the ivorysql.conf file, modify the value in the configuration file, and restart the database to take effect. This can be viewed through the show command|
| ivorysql.port | Indicates the port number for connecting in compatibility mode. When initializing the database, read the configuration from the ivorysql.conf file and modify the value in the configuration file. To take effect, restart the database and view it through the show command|
| nls_date_format | Represents the default date format, which can be viewed through the show command and defaults to 'YYYY-MM-DD'. It can be set through the set command and reset back to the default value through the reset command. The reset all command will reset this variable|
| nls_length_semantics | Compatible with oracle parameters of the same name, controlling the size of memory occupied by a character|
| nls_timestamp_format | Compatible with oracle parameters of the same name, controlling date format with time|
| nls_timestamp_tz_format | Compatible with oracle parameters of the same name, controlling the date format with time zone|
| shared_preload_libraries | When initializing the database, read from the ivorysql.conf file and view it through the show command. Modify the value in the configuration file and restart the database to take effect.|

### `compatible_mode (enum)`
This parameter controls the behavior of the database server. The default value is `postgres` which indicates that it's native installation and the server will behave as native PG installation. If it's set to `oracle` then the output of the queries and system behavior overall changes, as it's expected to be more like Oracle.

When set to `oracle`, this parameter adds a schema of the same name to the `search_path` implicitly.
So that Oracle compatible objects can be located.

The parameter can be set through the `postgresql.conf` configuration file to take effect for the whole cluster. Or it can be set on session based through the client using the `set` command.


### `nls_length_semantics (enum)`
This parameter controls how to create `CHAR` and `VARCHAR2` columns based on length semantics. The default is set to `NONE` which does not effect anything. `BYTE` can be set to store data with byte length semantics. `CHAR` to use the char length semantics.