Como obter a seqüência de conexão de um banco de dados


197

Criei um banco de dados com o SQL Server Management Studio, gostaria de usá-lo agora no meu aplicativo C #. Eu preciso da string de conexão?

Onde posso encontrar a cadeia de conexão e onde meu banco de dados está armazenado?

Tenho que publicá-lo ou algo assim, ou está nos meus documentos em algum lugar?

using (var conn = new SqlConnection("your connection string to the database"))

Como obtenho a cadeia de conexão ? Onde posso encontrar a cadeia de conexão para copiar e colar na seção acima?

Como publicar meu banco de dados para que o Visual Studio possa buscá-lo? Então eu posso simplesmente puxar a cadeia de conexão de lá?


Dê uma olhada em como gerar a string de conexão youtu.be/1WgO7CDSmu8
anomepani

Respostas:


201

A maneira mais fácil de obter a cadeia de conexão é usando a janela "Server Explorer" no Visual Studio (menu View , Server Explorer ) e conectar-se ao servidor a partir dessa janela.

Em seguida, você pode ver a cadeia de conexão nas propriedades do servidor conectado (escolha a conexão e pressione F4 ou Alt + Enter ou escolha Propriedades no menu do botão direito do mouse).

Configurações avançadas de cadeia de conexão: ao criar a conexão, você pode modificar qualquer uma das opções avançadas de cadeia de conexão, como MARS, resiliência, timeot, configuração de pool etc. clicando no botão "Avançado ..." na parte inferior do " Adicionar conexão ". Você pode acessar esta caixa de diálogo posteriormente clicando com o botão direito do mouse em Conexão de dados e escolhendo "Modificar conexão ...". As opções avançadas disponíveis variam de acordo com o tipo de servidor.

Se você criar o banco de dados usando o SQL Server Management Studio, o banco de dados será criado em uma instância do servidor. Para implantar seu aplicativo, você deverá fazer um backup do banco de dados e implantá-lo na implantação do SQL Server. Como alternativa, você pode usar um arquivo de dados usando o SQL Server Express (localDB no SQL Server 2012), que será facilmente distribuído com seu aplicativo.

Ou seja, se é um aplicativo ASP.NET, há uma pasta App_Data. Se você clicar com o botão direito do mouse, poderá adicionar um novo elemento, que pode ser um Banco de Dados do SQL Server. Este arquivo estará nessa pasta, funcionará com o SQL Express e será fácil de implantar. Você precisa do SQL Express / localDB instalado em sua máquina para que isso funcione.


2
Entendo dessa maneira e gosto: D, mas você poderia explicar mais sobre como fazer um backup e implantar? meu conhecimento do MS SQL Server é ruim, comecei a usá-lo cerca de uma hora atrás: \
Pomster

Existe um servidor realsql? você usará o sql server express? é suficiente com o SQL Server Compact Edition? Não podemos obter o que você pode usar se você não dá informação extra
Jotabe

1
Usei o MS SQl Server Management Studio 2008, o estúdio MS SQL Management para criar um banco de dados. Eu usei uma consulta para criar algumas colunas. Agora eu gostaria de preenchê-lo com o meu aplicativo C #
Pomster

Este aplicativo será implantado? Você vai usá-lo localmente? Você se importa com o tipo de servidor necessário? Não preciso saber como você fez seu banco de dados, mas onde e por quê. Eu não posso adivinhar o que você precisa !!!
JotaBe

Vou usá-lo localmente, não sei o que você está me pedindo para lhe dar?
Pomster

113

Uma maneira muito simples de recuperar uma string de conexão é criar um arquivo de texto, alterar a extensão de .txt para .udl .

Clique duas vezes no arquivo .udl para abrir o assistente Data Link Properties .

Configure e teste a conexão com o servidor de banco de dados.

Feche o assistente e abra o arquivo .udl com o editor de texto de sua escolha e simplesmente copie a cadeia de conexão (sem a Provider=<driver>parte) para usá-la no aplicativo C #.

exemplo de conteúdo de arquivo udl

[oledb]
; Everything after this line is an OLE DB initstring
Provider=SQLNCLI11.1;Integrated Security=SSPI;Persist Security Info=False;User ID="";Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;Initial File Name="";Server SPN=""

o que você precisa copiar dele

Integrated Security=SSPI;Initial Catalog=YOURDATABASENAME;Data Source=YOURSERVERNAME;

Se você deseja especificar nome de usuário e senha, pode adotar a partir de outras respostas.

Tutorial: https://teusje.wordpress.com/2012/02/21/how-to-test-an-sql-server-connection/


Se isso não funcionar, existem alguns arquivos de registro que farão alterações no registro para ativar / desativar a extensão UDL. Normalmente, procuro na pasta do Windows * .reg.
AMissico

Dê uma olhada em gerar e salvar seqüência de conexão no arquivo de configuração web youtu.be/1WgO7CDSmu8
anomepani

20

Em connectionstrings.com, você pode encontrar a cadeia de conexão para cada provedor de banco de dados. Uma cadeia de conexão é criada com certos atributos / propriedades e seus valores. Para o SQL Server 2008, ele se parece com este (padrão, que é o que você precisará aqui):

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

em myServerAddress, escreva o nome da sua instância instalada (por padrão, é .\SQLEXPRESSpara a edição do SQL Server Express). Catálogo inicial = o nome do seu banco de dados, você o verá no SSMS à esquerda após a conexão. O resto fala por si.

editar

Você precisará omitir nome de usuário e senha para autenticação do Windows e adicionar Integrated Security=SSPI.


11

Se você instalou e configurou o MS SQL Server e o Management Studio, acesse o Visual Studio (Visual Studio, não o SQL Server Management Studio).

1] No Visual Studio, vá em Ferramentas -> Conectar ao banco de dados .

2] Em Nome do servidor, selecione o nome do servidor de banco de dados (deixe a lista Preencher, se estiver demorando).

3] Em Conectar-se a um banco de dados, selecione Selecionar ou insira um nome de banco de dados .

4] Selecione seu banco de dados no menu suspenso.

5] Depois de selecionar Banco de Dados, tente Testar Conexão.

6] Se a conexão de teste for bem-sucedida, clique em OK.

7] No Visual Studio, vá em Exibir -> Server Explorer .

8] Na janela Server Explorer, em Data Connections, selecione seu banco de dados. Clique com o botão direito do mouse em seu Banco de Dados -> Clique em Propriedades .

9] Na janela Propriedades , você verá sua seqüência de conexão .


9

Minha solução foi usar (2010).

Em uma nova planilha, selecione uma célula e:

Data -> From Other Sources -> From SQL Server 

coloque o nome do servidor , selecione tabela , etc,

Quando chegar à caixa de diálogo "Importar dados",
clique na Propertiescaixa de diálogo "Propriedades da conexão" e
selecione a guia "Definição".

E o Excel exibe bem a String de conexão para copiar
(ou até Exportar arquivo de conexão ... )


Isso funciona perfeitamente e não requer que a conexão seja configurada no VS.
Robino 01/01

Haha, essa é uma maneira super criativa e eficaz de conseguir isso. Eu tentei primeiro simplesmente porque não exigia nenhuma dependência de pré-requisito. Obrigado.
Todd

3

coloque a tag abaixo no arquivo web.config no nó de configuração

 <connectionStrings>
<add name="NameOFConnectionString" connectionString="Data Source=Server;Initial Catalog=DatabaseName;User ID=User;Password=Pwd"
  providerName="System.Data.SqlClient" />

então você pode usar a cadeia de conexão acima, por exemplo

SqlConnection con = new SqlConnection();
            con.ConnectionString = ConfigurationManager.ConnectionStrings["NameOFConnectionString"].ToString();

3

Se alguém usar a ferramenta Linqpad, depois de conectar-se a um banco de dados de destino a partir das conexões, poderá obter uma cadeia de conexão para usar.

  1. Clique com o botão direito do mouse na conexão com o banco de dados.
  2. Selecione Properties
  3. Selecione Advanced
  4. Selecione Copy Full Connection String to Clipboard

Resultado: Data Source=.\jabberwocky;Integrated Security=SSPI;Initial Catalog=Rasa;app=LINQPad

insira a descrição da imagem aqui


Remova os app=LinqPaddrivers e outros itens, como em Servervez da fonte, talvez seja necessário ajustar o driver para se adequar à operação de destino; mas dá uma plataforma de lançamento.


2
Eu aprovo esta mensagem
Jabberwocky

1

O banco de dados do servidor sql será armazenado por padrão no seguinte caminho

<drive>:\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Data\

, onde <drive>está a unidade de instalação e X é o número da instância (MSSQL.1 para a primeira instância do Mecanismo de Banco de Dados). Para fornecer a cadeia de conexão, você deve saber qual é o nome do servidor do banco de dados do servidor sql, onde você armazenou, seguido pela instância do servidor de banco de dados.

Geralmente, o nome do servidor será como o endereço IP da máquina em que o banco de dados está conectado e a instância padrão será SqlExpress

Uma cadeia de conexão contém o nome da fonte de dados , como nome do servidor, catálogo inicial , nome do banco de dados, nome do usuário , nome do usuário , nome do usuário do banco de dados, senha do usuário do banco de dados.


1
Como obtenho a string de conexão?
Pomster

1
Dei uma olhada em Arquivos de programas \ Microsoft SQl Server e não tenho idéia do que estou procurando?
Pomster

você não precisa procurar a pasta de armazenamento do banco de dados, consulte o link que forneci para a cadeia de conexão e escreva sua cadeia de conexão.
Sai Kalyan Kumar Akshinthala

0

Se você criou o Connection Manager em seu projeto, pode simplesmente puxar a cadeia de conexão de lá.

String connection = this.dts.connections["<connection_manager_name>"];

E use esta conexão em:

using (var conn = new SqlConnection(connection))

Por favor corrija-me se eu estiver errado.


0

A maneira mais fácil, meus amigos, é abrir a guia do explorador de servidores no visual studio 2019 (no meu caso) e tentar criar a conexão com o banco de dados. Depois de criar uma conexão bem-sucedida, clique com o botão direito do mouse e acesse propierties. Lá você encontrará um campo de conexão de string com a sintaxe correta! ... Isso funcionou para mim porque eu sabia o nome do meu servidor antes ... simplesmente não conseguia descobrir a sintaxe correta para executar o meu andaime ef ...


-2
SqlConnection con = new SqlConnection();
con.ConnectionString="Data Source=DOTNET-PC\\SQLEXPRESS;Initial Catalog=apptivator;Integrated Security=True";

2
Como isso responde à pergunta do OP?
Filburt
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.