Какова строка подключения для соединений odbc?

Я всегда делал веб-приложения, и теперь мне нужно сделать консольное приложение. Мне нужно использовать как соединение 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, так и обычный ... поскольку они кажутся разными, они должны отличаться в зависимости от образцов в Интернете (которые не работают).


person rksprst    schedule 06.11.2008    source источник


Ответы (4)


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

ОБНОВЛЕНО 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
}
person x0n    schedule 06.11.2008
comment
Я согласен. Интересно, как давно существует этот трюк? Я поражен, что я этого не знал. Действительно крутая уловка! - person EnocNRoll - AnandaGopal Pardue; 28.04.2009
comment
Как это может иметь только 15 голосов? Одна из самых невероятных скрытых жемчужин, которые я когда-либо видел. - person Thomas; 03.04.2010
comment
Ха, кто-то дал мне отрицательный голос по этому поводу. Почему? Слишком легко для вас? - person x0n; 19.06.2011
comment
@EnocNRolll Я полагаю, что это было примерно с тех пор, как MDAC был впервые представлен в 1996 году Я знаю, что использовал его в Windows 98. - person Darrel Miller; 09.05.2013
comment
@Darrel Это мелочи. - person EnocNRoll - AnandaGopal Pardue; 15.05.2013
comment
Блестящий. Благодаря тонну. - person Chris Pratt; 22.02.2016

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

http://www.connectionstrings.com/

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

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

person jonnii    schedule 06.11.2008
comment
примечание: я пробовал несколько комбинаций, искал в Интернете (включая connectionstrings.com), но ни одна из них не сработала. - person Nathan Koop; 06.11.2008

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

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

http://www.connectionstrings.com/

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

person Gustavo Rubio    schedule 06.11.2008
comment
примечание: я пробовал несколько комбинаций, искал в Интернете (включая connectionstrings.com), но ни одна из них не сработала. - person Nathan Koop; 06.11.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();
person Nathan Koop    schedule 06.11.2008