none
Создание ODBC DSN RRS feed

  • Вопрос

  • Привет!

    Подскажите как создать ODBC DSN c определенными параметрами для получения данных из dbf файлов? Командлет Add-OdbcDsn имеет параметр SetPropertyValue, но я не нашел список значений который можно туда передать. Если быть точным мне надо создать DSN c драйвером Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx) и снятым чекбоксом Использовать текущий каталог (Use Current Directory). Ткните носом плиз в список параметров для ODBC DSN. 

    Так же был бы признателен за мануал по формированию ConnectionString в System.Data.Odbc.OdbcConnection

    3 июня 2015 г. 20:40

Ответы

  • 1) Создаете Источники данных ODBC (32-разрядная версия) нужные вам коннекторы.

    2) С помощью командлета Get-OdbcDsn смотрите атрибуты, которые задаются

    PS > Get-OdbcDsn Test
    
    
    Name       : Test
    DsnType    : User
    Platform   : 32-bit
    DriverName : Driver do Microsoft dBase (*.dbf)
    Attribute  : {SafeTransactions, DriverId, DefaultDir, ImplicitCommitSync...}
    
    
    
    PS > Get-OdbcDsn Test | select -exp Attribute
    
    Name                           Value
    ----                           -----
    SafeTransactions               0
    DriverId                       533
    DefaultDir                     D:\
    ImplicitCommitSync
    Threads                        3
    UserCommitSync                 Yes

    3) Как только узнаете, какие данные Вам нужно, то уже можно использовать Add-OdbcDsn

    PS > Add-OdbcDsn -Name Test -Platform 32-bit -DriverName "Driver do Microsoft dBase (*.dbf)" -DsnType User -SetPropertyValue "DefaultDir=D:\"

    Заходим на сайт http://www.connectionstrings.com/ и выбираем требуемые ConnectionString для различных систем

    • Помечено в качестве ответа KrotovDA 4 июня 2015 г. 9:11
    Отвечающий
  • В CMD это выглядит так

    odbcconf.exe /a {CONFIGSYSDSN "SQL Server" "DSN=YourDSN|Server=YourServer|database=YourBase|Trusted_Connection=No"}
    C:\Windows\syswow64\odbcconf.exe /a {CONFIGSYSDSN "SQL Server" "DSN=YourDSN|Server=YourServer|database=YourBase|Trusted_Connection=No"}

    1 строка создаст х64 запись

    2 строка создаст запись х86

    • Помечено в качестве ответа KrotovDA 4 июня 2015 г. 9:11
    Модератор

Все ответы

  • 1) Создаете Источники данных ODBC (32-разрядная версия) нужные вам коннекторы.

    2) С помощью командлета Get-OdbcDsn смотрите атрибуты, которые задаются

    PS > Get-OdbcDsn Test
    
    
    Name       : Test
    DsnType    : User
    Platform   : 32-bit
    DriverName : Driver do Microsoft dBase (*.dbf)
    Attribute  : {SafeTransactions, DriverId, DefaultDir, ImplicitCommitSync...}
    
    
    
    PS > Get-OdbcDsn Test | select -exp Attribute
    
    Name                           Value
    ----                           -----
    SafeTransactions               0
    DriverId                       533
    DefaultDir                     D:\
    ImplicitCommitSync
    Threads                        3
    UserCommitSync                 Yes

    3) Как только узнаете, какие данные Вам нужно, то уже можно использовать Add-OdbcDsn

    PS > Add-OdbcDsn -Name Test -Platform 32-bit -DriverName "Driver do Microsoft dBase (*.dbf)" -DsnType User -SetPropertyValue "DefaultDir=D:\"

    Заходим на сайт http://www.connectionstrings.com/ и выбираем требуемые ConnectionString для различных систем

    • Помечено в качестве ответа KrotovDA 4 июня 2015 г. 9:11
    Отвечающий
  • В CMD это выглядит так

    odbcconf.exe /a {CONFIGSYSDSN "SQL Server" "DSN=YourDSN|Server=YourServer|database=YourBase|Trusted_Connection=No"}
    C:\Windows\syswow64\odbcconf.exe /a {CONFIGSYSDSN "SQL Server" "DSN=YourDSN|Server=YourServer|database=YourBase|Trusted_Connection=No"}

    1 строка создаст х64 запись

    2 строка создаст запись х86

    • Помечено в качестве ответа KrotovDA 4 июня 2015 г. 9:11
    Модератор
  • Спасибо. Как то сам не догадался так сделать. Пора завязывать с поздней работой :)