Skip to Main Content
IBM Power Ideas Portal


This portal is to open public enhancement requests against IBM Power Systems products, including IBM i. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Not under consideration
Workspace IBM i
Categories Db2 for i
Created by Guest
Created on Sep 17, 2024

Declare UTF-8 character lenght in SQL TABLE not in bytes

Currently, when I create a new table and declare a field, for example, of type CHAR(10) UTF-8, the system only allows for 10 characters if each character is 1 byte in size. If a character occupies 2 or more bytes, the field length is no longer sufficient. For example, if I need to insert 10 characters where each character takes up to 4 bytes, I would need to declare the field as 40 bytes long. It would be ideal if, when I declare a field with a length of 10, the system allows for 10 characters regardless of the byte size of each character.

Idea priority Medium
  • Guest
    Reply
    |
    Oct 13, 2024
    IBM does not intend to provide a solution to this Idea at this time, so it is being closed.

    We cannot change the storage length attribute of a character column defined with CCSID 1208 to be 4 times the defined length. Many applications rely on the existing behavior, and many database designs have included an expansion factor in their length definitions. This change would be possible by adding a new clause on the column definition, but we don't intend to invest in this solution at this time. Instead, the user must do their own multiplication of the maximum number of characters by 4 and use that for their character column length value.

    Db2 for i development team
    IBM Power Systems Development
  • Guest
    Reply
    |
    Sep 18, 2024

    How would you expect this to work if you declare it CHAR(10), and it allocates 40 bytes and you insert a value of "A23456789012345"   Would that get truncated to 10 characters, even though 40 bytes is more than sufficient?   How would this effect existing tables that expect the old way.  At a minimum we'd need a new keyword or something to distinguish the old way from the new way.