Postgresql ODBC error: неправильный синтаксис рядом с 'on' - PullRequest
0 голосов
/ 18 мая 2018

У меня есть запрос для PostgreSQL 9.6.6, который работает на консоли pgAdmin.Исходный запрос выглядит следующим образом:

insert into "UsageTable" ("ID", "Name", "Count", "Start", "End", "Offset")
values('test account' , 'test name' , '30' , '5/17/2018 12:00:00 AM' , '5/18/2018 12:00:00 AM' , '0' )
on conflict ("ID", "Name", "Start", "End") 
DO UPDATE SET "Count" = Excluded."Count" + "UsageTable"."Count";

Теперь я могу подключиться к PostgreSQL с помощью моего кода на C #.Однако я продолжаю получать сообщение об ошибке '{"ОШИБКА [42000] [Microsoft] [Драйвер ODBC SQL Server] [SQL Server] Неверный синтаксис рядом с' on '."}' Для этой команды

Это запрос вc # code

sql = @"INSERT INTO ""UsageTable"" (""ID"", ""Name"", ""Count"", ""Start"", ""End"", 
""Offset"")                   
VALUES('test account' , 'test name' , '30' , '5/17/2018 12:00:00 AM' , 
'5/18/2018 12:00:00 AM' , '0') 
[ON] CONFLICT (""ID"", ""Name"", ""Start"", ""End"") 
DO UPDATE SET ""Count"" = Excluded.""Count"" + ""UsageTable"".""Count""";


   MakeRetriableOperation().Invoke(cmd =>
            {
                cmd.CommandText = sql;

                cmd.ExecuteNonQuery();
            });

Я пробовал запрос без скобок, просто 'ON CONFLICT', но я получаю сообщение об ошибке, что это ключевое слово

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...