Skip to content

Conversation

@vmikhailenko
Copy link
Contributor

This change fixes local mtx setup for the application, so this does not happen after cds subscribe t1 --to http://localhost:4005 -u yves:

[error] - 500 > {
  code: '500',
  message: 'in cds.deploy(): near "from": syntax error in:\n' +
    "INSERT INTO sap_common_Currencies_texts (CODE,LOCALE,NAME,DESCR) SELECT CASE WHEN OLD.locale IS NULL THEN value->>'$[0]' ELSE (CASE WHEN json_type(value,'$[0]') IS NULL THEN OLD.CODE ELSE value->>'$[0]' END) END as CODE,CASE WHEN OLD.locale IS NULL THEN value->>'$[1]' ELSE (CASE WHEN json_type(value,'$[1]') IS NULL THEN OLD.LOCALE ELSE value->>'$[1]' END) END as LOCALE,CASE WHEN OLD.locale IS NULL THEN value->>'$[2]' ELSE (CASE WHEN json_type(value,'$[2]') IS NULL THEN OLD.NAME ELSE value->>'$[2]' END) END as NAME,CASE WHEN OLD.locale IS NULL THEN value->>'$[3]' ELSE (CASE WHEN json_type(value,'$[3]') IS NULL THEN OLD.DESCR ELSE value->>'$[3]' END) END as DESCR FROM (SELECT value,  from json_each(?)) as NEW LEFT JOIN sap_common_Currencies_texts AS OLD ON NEW.locale=OLD.locale AND NEW.code=OLD.code WHERE TRUE ON CONFLICT(locale,code) DO UPDATE SET CODE = excluded.CODE,LOCALE = excluded.LOCALE,NAME = excluded.NAME,DESCR = excluded.DESCR\n" +
    'Query {\n' +
    '  UPSERT: {\n' +
    "    into: { ref: [ \x1B[32m'sap.common.Currencies.texts'\x1B[39m ] },\n" +
    "    columns: [ \x1B[32m'CODE'\x1B[39m, \x1B[32m'LOCALE'\x1B[39m, \x1B[32m'NAME'\x1B[39m, \x1B[32m'DESCR'\x1B[39m ],\n" +
    '    rows: [\n' +
    "      [ \x1B[32m'EUR'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'Euro'\x1B[39m, \x1B[32m'European Euro'\x1B[39m ],\n" +
    "      [ \x1B[32m'USD'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'US-Dollar'\x1B[39m, \x1B[32m'United States Dollar'\x1B[39m ],\n" +
    "      [ \x1B[32m'CAD'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'Kanadischer Dollar'\x1B[39m, \x1B[32m'Kanadischer Dollar'\x1B[39m ],\n" +
    "      [ \x1B[32m'AUD'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'Australischer Dollar'\x1B[39m, \x1B[32m'Australischer Dollar'\x1B[39m ],\n" +
    "      [ \x1B[32m'GBP'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'Pfund'\x1B[39m, \x1B[32m'Britische Pfund'\x1B[39m ],\n" +
    "      [ \x1B[32m'ILS'\x1B[39m, \x1B[32m'de'\x1B[39m, \x1B[32m'Schekel'\x1B[39m, \x1B[32m'Israelische Schekel'\x1B[39m ],\n" +
    "      [ \x1B[32m'EUR'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'euro'\x1B[39m, \x1B[32m'de la Zone euro'\x1B[39m ],\n" +
    "      [ \x1B[32m'USD'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'dollar'\x1B[39m, \x1B[32m'dollar des États-Unis'\x1B[39m ],\n" +
    "      [ \x1B[32m'CAD'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'dollar canadien'\x1B[39m, \x1B[32m'dollar canadien'\x1B[39m ],\n" +
    "      [ \x1B[32m'AUD'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'dollar australien'\x1B[39m, \x1B[32m'dollar australien'\x1B[39m ],\n" +
    "      [ \x1B[32m'GBP'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'livre sterling'\x1B[39m, \x1B[32m'pound sterling'\x1B[39m ],\n" +
    "      [ \x1B[32m'ILS'\x1B[39m, \x1B[32m'fr'\x1B[39m, \x1B[32m'Shekel'\x1B[39m, \x1B[32m'shekel israelien'\x1B[39m ]\n" +
    '    ]\n' +
    '  }\n' +
    '}'
}

Apparently, the new SQLite driver is much more sensitive to column names.

Copy link
Contributor

@beckermarc beckermarc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah nice, I also noticed this recently, but didn't find the time yet to investigate!

@beckermarc beckermarc merged commit 908b3af into main Dec 12, 2024
2 checks passed
@beckermarc beckermarc deleted the fix-lower-case-column-names branch December 12, 2024 09:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants