DataSet Merge с игнорированием чувствительности к регистру - PullRequest
0 голосов
/ 16 марта 2020

Мы работаем над существующим приложением, которое использует SQL Сервер. И теперь мы перенесли базу данных SQL Server с SQL Server на PostgreSQL. PostgreSQL содержит все имена таблиц и их столбцы в нижнем регистре. Но мы все еще используем тот же код, который мы использовали для SQL Server.

Теперь у нас есть файлы, связанные с XSD, которые были сгенерированы для SQL База данных сервера. В файле XSD указан верблюд для имен таблиц и столбцов. Теперь, когда мы используем Postgres для подключения к серверу, существующие SQL запросы работают правильно. Но следующий код не удался из-за проблемы с учетом регистра.

Метод:

     public DataSet getMKey() {
        string sql = "SELECT * from MInfo where id=1";
        -- code to return dataset.
        return dataset;
     }

Код:

        DataSet ds1 = dbMgr.getMKey();

        DataSet ds2 = new DataSet();
        ds2.Tables.Add(XSDSchema.MInfo.Copy());
        ds1.Merge(ds2);

Метод Merge () не был выполнен, System.Data .DataException HResult = 0x80131920 Сообщение = Несоответствие столбцов в PrimaryKey: .m_key против .M_Key.

Может кто-нибудь предложить мне решение без изменения файла XSD.

Любая помощь действительно приветствуется.

...