Я пытаюсь создать таблицу в MSSQL, используя kbmMWORM с соединением uniDAC.
Ниже мое определение KbmmWТаблица:
[kbmMW_Table('name:DEPT')]
TDept = class
private
FCoGroup:string;
FDeptCode:string;
FDeptDesc:string;
public
[kbmMW_Field('name:CoGroup, primary:true', ftFixedChar, 6)]
[kbmMW_NotNull]
property CoGroup:string read FCoGroup write FCoGroup;
[kbmMW_Field('name:DeptCode, primary:true', ftFixedChar, 8)]
[kbmMW_NotNull]
property DeptCode:string read FDeptCode write FDeptCode;
[kbmMW_Field('name:DeptDesc', ftWideString, 30)]
[kbmMW_NotNull]
property DeptDesc:string read FDeptDesc write FDeptDesc;
end;
Вызов ORM.CreateOrUpgradeTable(TDept) приводит к этой ошибке:
exception class EkbMWexception with message 'MetaExists(mwmdtTable) not supported'.
Как исправить эту ошибку?





Убедитесь, что вы установили для свойства MetaData пула соединений UNIDAC значение, поддерживающее MSSQL.
Для kbmMWMSSQLMetaData задан пул соединений uniDac. Я протестировал использование первичного ключа с одним полем, и таблица успешно создана/обновлена. Может ли это быть связано с первичным ключом с несколькими полями, и ORM не может с этим справиться?