Max length value of string field is not honoured

Nisar3
Giga Guru

In the sys_dictionary table, I've the following field:

Nisar3_0-1751455792196.png


But ServiceNow is allowing to store a value greater than 30 characters. For eg: It allowed to store a value of "Health and Safety - Customer responsibility" which is 43 characters long.

 

Is this expected?

1 ACCEPTED SOLUTION

SANDEEP DUTTA
Tera Patron
Tera Patron

Hi @Nisar3 ,

When you create a new sys_dictionary record to define a new string field, the max_length is mandatory. Despite the similarity of the name to HTML's maxlength attributes for input or textarea tags, this is not enforced as a limit in the client or server.

Max length is not enforced on the Now Platform

Fields in ServiceNow accept string inputs greater than the sys_dictionary max_length value. This is the expected behavior of the product.

When you create a string field in ServiceNow, the underlying column in the database is created with a default data type based in part on the specified max_length value:

  • Small (40) = varchar(40)
  • Medium (100) = varchar(100)
  • Large (1000) = mediumtext
  • Extra Large (4000) = mediumtext

Refer to below article for more details:

https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB0685779

 

Thanks,
Sandeep Dutta

Please mark the answer correct & Helpful, if i could help you.

View solution in original post

11 REPLIES 11

Sorry to keep asking so many questions but I'm really trying to get my head wrapped around this topoic. If my assumption is correct, then for max length of 30, it should have only allowed max of 40 characters at database level. But in my case it allowed 43 characters as well.

Ankur Bawiskar
Tera Patron
Tera Patron

@Nisar3 

I agree with what @SANDEEP DUTTA shared.

It's implemented at database level.

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader