| Package | Description |
|---|---|
| gudusoft.gsqlparser.sqlenv |
| Modifier and Type | Method and Description |
|---|---|
static IdentifierRules |
IdentifierRules.forAccess()
Microsoft Access 标识符规则
|
static IdentifierRules |
IdentifierRules.forAnsi()
ANSI / ISO SQL 标识符规则(SQL-92 起的标准,与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forAthena()
Athena 标识符规则(与 Presto 相同)
|
static IdentifierRules |
IdentifierRules.forBigQueryColumn()
BigQuery 列名规则(大小写不敏感)
|
static IdentifierRules |
IdentifierRules.forBigQueryTable()
BigQuery 表名规则(大小写敏感)
|
static IdentifierRules |
IdentifierRules.forCouchbase()
Couchbase N1QL 标识符规则
|
static IdentifierRules |
IdentifierRules.forDameng()
Dameng (达梦) 标识符规则(与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forDatabricks()
Databricks 标识符规则(与 Hive 相同)
|
static IdentifierRules |
IdentifierRules.forDax()
DAX 标识符规则
|
static IdentifierRules |
IdentifierRules.forDB2()
DB2 / Netezza / Exasol 标识符规则(与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forDoris()
Apache Doris 标识符规则(默认配置,相当于 lower_case_table_names=1)
|
static IdentifierRules |
IdentifierRules.forDoris(int lowerCaseTableNames)
Apache Doris 标识符规则(与 MySQL 相同)
|
static IdentifierRules |
IdentifierRules.forDorisColumn()
Apache Doris 列名规则(与 MySQL 列名相同,始终大小写不敏感)
|
static IdentifierRules |
IdentifierRules.forDuckDB()
DuckDB 标识符规则
|
static IdentifierRules |
IdentifierRules.forFirebird()
Firebird 标识符规则(与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forFlink()
Apache Flink SQL 标识符规则
|
static IdentifierRules |
IdentifierRules.forGaussDB()
GaussDB 标识符规则(与 PostgreSQL 相同)
|
static IdentifierRules |
IdentifierRules.forGeneric()
通用规则(
dbvgeneric):没有具体方言时按 SQL 标准,见 forAnsi() |
static IdentifierRules |
IdentifierRules.forHANA()
SAP HANA 标识符规则(与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forHive()
Hive / SparkSQL / Impala / Databricks 标识符规则
|
static IdentifierRules |
IdentifierRules.forMdx()
MDX 标识符规则
|
static IdentifierRules |
IdentifierRules.forMySQL(int lowerCaseTableNames)
MySQL 标识符规则(table/schema names)
|
static IdentifierRules |
IdentifierRules.forMySQLColumn()
MySQL 列名规则(始终大小写不敏感)
|
static IdentifierRules |
IdentifierRules.forMySQLNative(int lowerCaseTableNames)
MySQL table / schema / table-alias names, as verified on MySQL 8.4.10, used by
EDbVendor.dbvmysql. |
static IdentifierRules |
IdentifierRules.forMySQLNativeColumn()
MySQL column, column-alias and index names, as verified on MySQL 8.4.10: kept as written and
compared by the simple lowercase mapping (
IdentifierRules.CaseCollapse.LOWER_SIMPLE), whatever
lower_case_table_names is. |
static IdentifierRules |
IdentifierRules.forMySQLNativeRoutine()
MySQL function, procedure and routine-parameter names, as verified on MySQL 8.4.10: kept as
written; two names are the same when their simple UPPERCASE forms are equal
(
IdentifierRules.CaseCollapse.UPPER_SIMPLE), whatever lower_case_table_names is. |
static IdentifierRules |
IdentifierRules.forMySQLRoutine()
MySQL 函数名规则(始终大小写不敏感)
|
static IdentifierRules |
IdentifierRules.forOracle()
Oracle 标识符规则
|
static IdentifierRules |
IdentifierRules.forOracleNative()
Oracle 标识符规则,as verified on Oracle 23.26 (AL32UTF8), used by
EDbVendor.dbvoracle. |
static IdentifierRules |
IdentifierRules.forPostgreSQL()
PostgreSQL / Redshift / Greenplum 标识符规则
|
static IdentifierRules |
IdentifierRules.forPostgreSQLNative()
PostgreSQL 标识符规则,as verified on PostgreSQL 16.15 with a UTF8 database, used by
EDbVendor.dbvpostgresql. |
static IdentifierRules |
IdentifierRules.forPowerQuery()
Power Query M 标识符规则
|
static IdentifierRules |
IdentifierRules.forPresto()
Presto / Trino 标识符规则
|
static IdentifierRules |
IdentifierRules.forRedshift()
Amazon Redshift 标识符规则(默认配置,
enable_case_sensitive_identifier = false) |
static IdentifierRules |
IdentifierRules.forSnowflake()
Snowflake 标识符规则(与 Oracle 相同)
|
static IdentifierRules |
IdentifierRules.forSnowflake(boolean quotedIdentifiersIgnoreCase)
Snowflake 标识符规则(根据 QUOTED_IDENTIFIERS_IGNORE_CASE 决定)
|
static IdentifierRules |
IdentifierRules.forSqlAnywhere()
SAP IQ / SQL Anywhere 标识符规则
|
static IdentifierRules |
IdentifierRules.forSqlite()
SQLite 标识符规则
|
static IdentifierRules |
IdentifierRules.forSQLServer()
SQL Server / Azure SQL 标识符规则
|
static IdentifierRules |
IdentifierRules.forSQLServer(String collation)
SQL Server / Azure SQL 标识符规则(根据 collation 决定大小写比较)
|
static IdentifierRules |
IdentifierRules.forStarrocks()
StarRocks 标识符规则(默认配置,相当于 lower_case_table_names=1)
|
static IdentifierRules |
IdentifierRules.forStarrocks(int lowerCaseTableNames)
StarRocks 标识符规则(带参数,相当于 MySQL 的 lower_case_table_names)
|
static IdentifierRules |
IdentifierRules.forStarrocksColumn()
StarRocks 列名规则(与 MySQL 列名相同,始终大小写不敏感)
|
static IdentifierRules |
IdentifierRules.forSybase()
Sybase ASE 标识符规则
|
static IdentifierRules |
IdentifierRules.forTeradata()
Teradata 标识符规则
|
static IdentifierRules |
IdentifierRules.forVertica()
Vertica 标识符规则(与 Presto 相同)
|
IdentifierRules |
CanonKey.getRuleDomain()
The effective rule cell this key's payload was produced under — the key's
rule domain within the profile (
IdentifierProfile.ruleDomainOf(gudusoft.gsqlparser.sqlenv.ESQLDataObjectType)). |
IdentifierRules |
IdentifierProfile.getRules(ESQLDataObjectType objectType)
获取指定对象类型的标识符规则
|
IdentifierRules |
IdentifierRules.resolvedCell()
This cell with
IdentifierRules.CaseCompare.SAME_AS_UNQUOTED resolved — the form that identifies a
rule domain, so two cells that behave identically are not treated as two domains
merely because one spells its quoted compare as "same as unquoted". |
IdentifierRules |
IdentifierProfile.ruleDomainOf(ESQLDataObjectType objectType)
The effective rule cell of one object category with
SAME_AS_UNQUOTED resolved —
the rule domain a CanonKey of that category belongs to. |
| Modifier and Type | Method and Description |
|---|---|
Map<ESQLDataObjectType,IdentifierRules> |
IdentifierProfile.getObjectRuleOverrides()
The categories this profile configures explicitly, finest granularity first.
|
| Modifier and Type | Method and Description |
|---|---|
IdentifierProfile.Builder |
IdentifierProfile.Builder.withColumnRules(IdentifierRules rules)
Convenience: override COLUMN_GROUP rules.
|
IdentifierProfile.Builder |
IdentifierProfile.Builder.withNameRules(IdentifierRules rules)
Convenience: override NAME_GROUP rules.
|
IdentifierProfile.Builder |
IdentifierProfile.Builder.withObjectRules(ESQLDataObjectType objectType,
IdentifierRules rules)
Override the rules of ONE object category — catalog/project, schema, table, column,
function … — independently of every other category (design §5.1).
|
IdentifierProfile.Builder |
IdentifierProfile.Builder.withRoutineRules(IdentifierRules rules)
Convenience: override ROUTINE_GROUP rules.
|
IdentifierProfile.Builder |
IdentifierProfile.Builder.withRules(IdentifierProfile.ObjectGroup group,
IdentifierRules rules)
Override the rules for a specific object group.
|