代码之家  ›  专栏  ›  技术社区  ›  promicro

开关输出的IIF长度限制为255

  •  2
  • promicro  · 技术社区  · 7 年前

    对于Enterprise Architect中的自定义SQL查询,我们使用IIF或SWITCH,但它们的输出似乎都有限制。

    下面的一个简单示例是一个有限制的查询

    select 
    switch(true, note) as NoteAfterSwitch,
    Cstr(switch(true, note)) as NoteAfterCstrSwitch,
    switch(true, cstr(note)) as CstrNoteAfterSwitch,
    Cvar(switch(true, note)) as NoteAfterCVarSwitch,
    switch(true, cvar(note)) as CvarNoteAfterSwitch,
    Note
    from t_object as t
    where t.object_id = 115
    

    NoteAfterSwitch列限制为255个字符。

    在NoteAfterCstrSwitch和cstrnotefterswitch列中,我们尝试使用CStr,但也没有成功。

    在NoteAfterCvarSwitch和CvarNoteAfterSwitch列中,我们尝试使用Cvar,但也没有成功。

    编辑 我们还尝试使用JET 4.0,但不幸的是没有成功。它导致了置乱输出:

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  2
  •   promicro    7 年前

    我们的实习生(凯文)在一个 Austrian blog . 我们在 IIF Switch 这可以用一个空的 union :

    SELECT  Note as notes
    FROM    t_object AS o
    where   1 = 0
    union all
    select  switch(true, o.note)
    FROM    t_object AS o
    WHERE   o.Object_ID = 115
    

    推荐文章