Что такое строка соединения для соединений odbc? - PullRequest
4 голосов
/ 06 ноября 2008

Я всегда делал веб-приложения, и теперь мне нужно сделать консольное приложение. Мне нужно использовать как odbc соединение, так и обычное соединение.

В прошлом я бы использовал:

<add name="LinkConnectionString" connectionString="Data Source=SERENITY\SQLEXPRESS;Initial Catalog=Link;Integrated Security=True" providerName="System.Data.SqlClient"/>

В файле web.config я не уверен, как сделать то же самое со встроенным кодом. Так как строка connectionString = @ ".....";

Я пробовал несколько комбинаций, смотрел онлайн (включая connectionstrings.com), но ни одна из них не сработала.

Кто-нибудь может мне помочь? Я хочу, чтобы и odbc, и обычный ... так как они кажутся разными, должны отличаться в зависимости от примеров онлайн (которые не работают)

Ответы [ 5 ]

43 голосов
/ 06 ноября 2008

Крутой трюк для построения строк подключения - щелкнуть правой кнопкой мыши на рабочем столе, выбрать «новый текстовый документ» - это создаст временный файл .txt блокнота. Переименуйте его в .udl, а затем дважды щелкните по нему - теперь вы можете создать любую строку подключения. Нажмите OK, когда закончите, и откройте файл в блокноте, чтобы увидеть строку подключения.

ОБНОВЛЕНО 28 апреля 2009 г. (сценарий powershell):

function get-oledbconnection ([switch]$Open) {
    $null | set-content ($udl = "$([io.path]::GetTempPath())\temp.udl");
    $psi = new-object Diagnostics.ProcessStartInfo
    $psi.CreateNoWindow = $true
    $psi.UseShellExecute = $true
    $psi.FileName = $udl
    $pi = [System.Diagnostics.Process]::Start($psi)
    $pi.WaitForExit()
    write-host (gc $udl) # verbose 
    if (gc $udl) {
        $conn = new-object data.oledb.oledbconnection (gc $udl)[2]
        if ($Open) { $conn.Open() }
    }
    $conn
}
9 голосов
/ 06 ноября 2008

Здесь вы сможете найти все, что вам нужно:

http://www.connectionstrings.com/

Для одного из наших приложений мы используем следующую строку подключения:

"DRIVER = {водитель}; SERVER = server.database; UID = имя пользователя; PWD = пароль"

1 голос
/ 06 ноября 2008

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

Возможно, вы захотите взглянуть на:

http://www.connectionstrings.com/

У них там много примеров.

0 голосов
/ 02 апреля 2009

<add name="myName" connectionString="dsn=myDSN;UID=myUID;" providerName="System.Data.Odbc" />

0 голосов
/ 06 ноября 2008

Вы пробовали что-то подобное для SQLServer?

  SqlConnection conn = new SqlConnection(@"Data Source=SERENITY\SQLEXPRESS;Initial Catalog=Link;Integrated Security=True");
  SqlCommand cmd = new SqlCommand("SELECT * FROM tableName", conn);
  conn.Open();
  //<snip> Run Command
  conn.Close();

и это для ODBC

OdbcConnection conn = new OdbcConnection(@"ODBC connection string");
OdbcCommand cmd = new OdbcCommand("SELECT * FROM tableName", conn);
conn.Open();
//Run Command
conn.Close();
...