![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Как создать новый DSN из программыDelphi , Базы данных , Alias
Автор: Vit type TSQLConfigDataSource = function(hwndParent: Integer; fRequest: Integer; lpszDriverString: string; lpszAttributes: string): Smallint; stdcall; function SQLConfigDataSource(hwndParent: Integer; fRequest: Integer; lpszDriverString: string; lpszAttributes: string): Integer; stdcall; var func: TSQLConfigDataSource; OdbccpHMODULE: HMODULE; begin OdbccpHMODULE := LoadLibrary('c:\WINDOWS\SYSTEM\odbccp32.dll'); if OdbccpHMODULE = 0 then raise Exception.Create(SysErrorMessage(GetLastError)); func := GetProcAddress(OdbccpHMODULE, PChar('SQLConfigDataSource')); if @func = nil then raise Exception.Create('Error Getting adress for SQLConfigDataSource' + SysErrorMessage(GetLastError)); Result := func(hwndParent, fRequest, lpszDriverString, lpszAttributes); FreeLibrary(OdbccpHMODULE); end; procedure TForm1.Button1Click(Sender: TObject); begin if SQLConfigDataSource(0, 1, 'Microsoft Excel Driver (*.xls)', Format('DSN=%s;DBQ=%s;DriverID=790', ['MyDSNName', 'c:\temp\temp.xls'])) <> 1 then ShowMessage('Cannot create ODBC alias'); end; PS: Ecли вы собираетесь работать с этим DSN через BDE, то надо закрыть и открыть Session, иначе он не будет доступен Программа на языке Delphi, которая создает новый Data Source Name (DSN) с помощью функции Типы и функции
Первая секция определяет тип Функция Главная процедура
Главная процедура - Вот, что код делает:
* Он загружает библиотеку ODBC32 с помощью Дополнительные заметки Комментарий в конце кода упоминает, что если вы планируете работать с этим DSN через BDE (Borland Database Engine), вам нужно закрыть и reopen сессию для DSN, чтобы она стала доступной. Это потому, что BDE кэширует DSNs, и создание нового не автоматически обновляет кэш. В целом, этот код предоставляет основное пример создания нового ODBC DSN в Delphi с помощью функции Создать новый DSN из программы можно с помощью функции SQLConfigDataSource, которая позволяет настроить параметры ОDBC-коннекта к источнику данных. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |