Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User Collation #341

Merged
merged 8 commits into from
Nov 9, 2023
Merged

User Collation #341

merged 8 commits into from
Nov 9, 2023

Conversation

Jdochoa
Copy link
Contributor

@Jdochoa Jdochoa commented Oct 21, 2023

Added user-collation node.

@mariuz
Copy link
Owner

mariuz commented Oct 21, 2023

@Jdochoa Looks fine at first look

@arvanus
Copy link
Collaborator

arvanus commented Oct 22, 2023

Hi!
Looks like you neet to push CHARACTERSET.hml
image

Also right-click Characterset->alter does nothing

@arvanus
Copy link
Collaborator

arvanus commented Oct 22, 2023

Also no collation is displayed, and add spaces into new collation template:
"[CASE [IN]SENSITIVE] \n"
"[ACCENT [IN]SENSITIVE] \n"

@Jdochoa
Copy link
Contributor Author

Jdochoa commented Oct 24, 2023

Hi! Looks like you neet to push CHARACTERSET.hml image

Also right-click Characterset->alter does nothing

It's my mistake, the visual part of characterset is not implemented yet.
It's already commit

@Jdochoa
Copy link
Contributor Author

Jdochoa commented Oct 24, 2023

Also no collation is displayed, and add spaces into new collation template: "[CASE [IN]SENSITIVE] \n" "[ACCENT [IN]SENSITIVE] \n"

This is the implementation of User Collation, not the of System Collation.

@arvanus
Copy link
Collaborator

arvanus commented Oct 24, 2023

The DDL generated differs from the creation of the collation

CREATE COLLATION PT_BR_CI_COMPR
  FOR ISO8859_1 
  FROM PT_PT
  PAD SPACE
  CASE INSENSITIVE
  'DISABLE-COMPRESSIONS=0;DISABLE-EXPANSIONS=0

Output:

CREATE COLLATION PT_BR_CI_COMPR
  FOR ISO8859_1 
  FROM EXTERNAL ('PT_PT') 
  PAD SPACE
  CASE INSENSITIVE
  'DISABLE-COMPRESSIONS=0;DISABLE-EXPANSIONS=0'
; 

Attention to FROM EXTERNAL ('PT_PT')

Never needed to create a collation, so don't know it it can cause any problems

@Jdochoa
Copy link
Contributor Author

Jdochoa commented Oct 25, 2023

The DDL generated differs from the creation of the collation

CREATE COLLATION PT_BR_CI_COMPR
  FOR ISO8859_1 
  FROM PT_PT
  PAD SPACE
  CASE INSENSITIVE
  'DISABLE-COMPRESSIONS=0;DISABLE-EXPANSIONS=0

Output:

CREATE COLLATION PT_BR_CI_COMPR
  FOR ISO8859_1 
  FROM EXTERNAL ('PT_PT') 
  PAD SPACE
  CASE INSENSITIVE
  'DISABLE-COMPRESSIONS=0;DISABLE-EXPANSIONS=0'
; 

Attention to FROM EXTERNAL ('PT_PT')

Never needed to create a collation, so don't know it it can cause any problems

Hi @arvanus , please see https://firebirdsql.org/refdocs/langrefupd25-ddl-collation.html#langrefupd25-ddl-collation-create

@arvanus
Copy link
Collaborator

arvanus commented Oct 25, 2023

Hi @Jdochoa
So, I reading from here: https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref40/fblangref40-ddl-collation.html

The optional FROM clause specifies the base collation that is used to derive a new collation. This collation must already be present in the database. If the keyword EXTERNAL is specified, then Firebird will scan the .conf files in $fbroot/intl/, where extname must exactly match the name in the configuration file (case-sensitive).

If no FROM clause is present, Firebird will scan the .conf file(s) in the intl subdirectory for a collation with the collation name specified in CREATE COLLATION. In other words, omitting the FROM basecoll clause is equivalent to specifying FROM EXTERNAL ('collname').

Looks like they are different

@Jdochoa
Copy link
Contributor Author

Jdochoa commented Oct 26, 2023

Hi @Jdochoa So, I reading from here: https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref40/fblangref40-ddl-collation.html

The optional FROM clause specifies the base collation that is used to derive a new collation. This collation must already be present in the database. If the keyword EXTERNAL is specified, then Firebird will scan the .conf files in $fbroot/intl/, where extname must exactly match the name in the configuration file (case-sensitive).

If no FROM clause is present, Firebird will scan the .conf file(s) in the intl subdirectory for a collation with the collation name specified in CREATE COLLATION. In other words, omitting the FROM basecoll clause is equivalent to specifying FROM EXTERNAL ('collname').

Looks like they are different

Hi @arvanus ,

I understand what you are saying, but check how ISQL shows it.

imagen

@arvanus arvanus merged commit 7bae230 into mariuz:master Nov 9, 2023
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants