De Luna Gomez, Miguel   wrote (unfortunately only directly to one guy, not to the 
list):

> 
> HI I was checking the news and I found you answering a 
> question related to opensql. We are changing some portal 
> stuff to open sql and one problem came up.
> 
> When doing a join there is an error saying: joins columns too 
> long. the problem dissapears when i remove the last 
> condition:AND it.AIB_Category = atx.AIB_Category
> 
> The query is as follows:
> 
> 
> SELECT it.AIB_IID, it.AIB_Owner, it.AIB_Owner_Type, 
> it.AIB_Category, it.AIB_RID1,it.AIB_RID2,it.AIB_RID3, it.AIB_State 
> FROM KMC_AIB_ITEMS as it,KMC_AIB_ASSIGNED as atx 
> WHERE atx.AIB_RID_Key = '2223017460' AND atx.AIB_RID1 = 
> '/userhome/lunawcm/actioninbox/approval/review/0a8b506e-f800-0
> 010-9089-df74001ac5cf.xml.'  AND it.AIB_IID = atx.AIB_IID AND 
> it.AIB_Owner = atx.AIB_Owner  AND it.AIB_Owner_Type = 
> atx.AIB_Owner_Type
> AND it.AIB_Category = atx.AIB_Category
> 
> and both tables are:
> 
> CREATE TABLE "SAPC11DB"."KMC_AIB_ASSIGNED"
> (
>       "AIB_IID"               Varchar (36) UNICODE    NOT NULL,
>       "AIB_OWNER"               Varchar (256) UNICODE    NOT NULL,
>       "AIB_OWNER_TYPE"               Integer    NOT NULL,
>       "AIB_CATEGORY"               Varchar (254) UNICODE    NOT NULL,
>       "AIB_RID_KEY"               Varchar (16) UNICODE    NOT NULL,
>       "AIB_RID1"               Varchar (1000) UNICODE    NOT NULL,
>       "AIB_RID2"               Varchar (1000) UNICODE    NOT NULL,
>       "AIB_RID3"               Varchar (51) UNICODE    NOT NULL
> )
> 
> 
> CREATE TABLE "SAPC11DB"."KMC_AIB_ITEMS"
> (
>       "AIB_IID"               Varchar (36) UNICODE    NOT NULL,
>       "AIB_OWNER"               Varchar (254) UNICODE    NOT 
> NULL    DEFAULT ' ',
>       "AIB_OWNER_TYPE"               Integer    NOT NULL    
> DEFAULT           0,
>       "AIB_CATEGORY"               Varchar (254) UNICODE    
> NOT NULL    DEFAULT ' ',
>       "AIB_STATE"               Integer    NOT NULL,
>       "AIB_STATE_CHANGE"               Fixed (19,0)    NOT NULL,
>       "AIB_RID1"               Varchar (1000) UNICODE    NOT 
> NULL    DEFAULT ' ',
>       "AIB_RID2"               Varchar (1000) UNICODE    NOT 
> NULL    DEFAULT ' ',
>       "AIB_RID3"               Varchar (51) UNICODE    NOT 
> NULL    DEFAULT ' '
> )
> 
> 
> 
> Kannst du bitter mir Helfen?
> 
> Danke,
> 
> Miguel de Luna

2009: Join columns too long
Explanation:
The internal length of a table's join columns must not exceed 1020 bytes. Join columns 
are the columns that are contained in a <JOIN PREDICATE>. 
Example
                        WHERE (S.A = T.V AND S.B < T.W)
                        The join columns of the table S are the columns S.A and S.B. 
The internal length of the join columns of S is the internal length of the column S.A 
plus the internal length of the column S.B. The internal length of the join columns of 
S must not exceed 1020 bytes.
User Action:
You can attempt to achieve the expected result by issuing several <QUERY statement>s 
and creating tables as temporary results.


And your column "AIB_RID1" alone needs 2001 bytes. That can't work.
Don't you think, that an ID of 1000 character is a little bit oversized?
And is UNICODE needed for this, doubling the needed size of bytes?

Elke
SAP Labs Berlin

-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to