Maximum size for the name of stored procedures, fields, etc ... in Firebird

1

I searched through various sources and found no definitive answer to this question.

I think this is a pertinent question because, based on this, we can create the names of database objects by glimpsing these boundaries.

For example, suppose I have a stored procedure with the name SPD_MINHA_STORED_PROCEDURE_REVOLUCIONARIA_PROJETADA_PARA_SALVAR_O_MUNDO .

This string has 72 characters. Suppose, I create, another procedure with the name SPD_MINHA_STORED_PROCEDURE_REVOLUCIONARIA_PROJETADA_PARA_SALVAR_A_GALAXIA .

Now suppose that, Firebird understands and considers only the first 30 characters (which in the case of the procedures name are the same).

When I invoke these stored procedures , I will have problems because if the Firebird understands and considers only the first 30 characters of the name, how will I know which procedure is being called?

What limits for the names of the database objects to report the same in the relations below:

FireBird Versão 2.5.5
Stored Procedures -> Limite do nome = ?
Table -> Limite do nome = ?
View -> Limite do nome = ?
Trigger -> Limite do nome = ?
Exception -> Limite do nome = ?
Nome de variáveis/parâmetros de stored's -> Limite do nome = ?
    
asked by anonymous 14.03.2016 / 12:52

2 answers

1

I did not really find official documentation. The handle limit in Firebird 2.5 is 30 characters (or 31 seconds) some fonts ). Although not official, it is what says several answers in forums and other sites on the internet. No matter where the identifier is used, then in all cases above stick to these limits so you do not have problems. It looks like will increase in 4.0 .

If you are unsure if this is correct I would suggest creating two identifiers for the same object type within DB with a larger size where the difference between the names occurs only in the characters that exceed the limit, the characters within the limit must be the same , this would cause a name conflict. It's going down. The non-conflicting limit is the implementation limit.

    
14.03.2016 / 13:18
0

There are two types of identifiers: regular and delimited. They have different rules of use. Delimited identifiers are only available in dialect 3.

But speaking only about limit , the limit for both identifiers is 31 characters.

This is in the documentation / manuals / materials for reference. See the following link: link

    
23.03.2016 / 18:07