2015-09-07 16 views
0

Старается настройка соединения с SQL Server и поймать ошибкуМожет не правильно настроить подключение к SQL Server в mORMot

var 
    GFireDACConnProp : TSQLDBFireDACConnectionProperties; 
    GFFireDACConn: TSQLDBFireDACConnection; 
begin 
    try 
    GFireDACConnProp := TSQLDBFireDACConnectionProperties.Create('MSSQL?Server=server','dbname','user','pass'); 
    GFFireDACConn := TSQLDBFireDACConnection.Create(GFireDACConnProp); 
    // OR I := GFireDACConnProp.Execute('Select * from Station', []); 
    GFFireDACConn.Connect; 
.... 

Сообщение об ошибке:

app_.exe Project поднятого класса исключений Exception с сообщение «Объектная фабрика для класса {3E9B315B-F456-4175-A864-B2573C4A2101} отсутствует . Чтобы зарегистрировать его, вы можете удалить компонент [TFDPhysXXXDriverLink] в свой проект ».

Что такое правильный способ подключения к SQL Server и предоставления службы REST?

ответ

1

FireDAC более полезен, чем некоторые другие рамки, поскольку когда что-то не так, сообщения об исключении часто говорят, как исправить проблему.

Итак, в вашем случае, учитывая, что в сообщении говорится, что «вы можете удалить компонент [TFDPhysXXXDriverLink] в свой проект», первым делом нужно было бы удалить соответствующий компонент DriverLink в вашу форму/datamodule. Поскольку вы используете Sql Server, ссылка на драйвер для выбора будет TFDPhysMSSqlDriverLink, которая находится на вкладке «Связи FireDAC» палитры компонентов.

Если вы создаете консольное приложение, очевидно, что нет формы или датамодуля, чтобы удалить ссылку. В этом случае создайте его в коде:

FDPhysMSSQLDriverLink := TFDPhysMSSQLDriverLink.Create(Nil); 
+0

Замечательно, однако я использую консольное приложение. Какие трюки я должен выполнять в этом случае? – SpanishBoy

+0

Создайте его в коде, я думаю - см. Обновленный ответ. – MartynA

+0

Не можете найти этот класс: F2613 Единица 'FireDAC.Phys.MSSQL' не найдена. Какая-то магия :). Интересно, как mORMot борется с проблемой? – SpanishBoy