rocks 0 Posted December 30, 2017 Report Share Posted December 30, 2017 Boa noite, Tenho de fazer uma aplicação para uma oficina com o objectivo de registar o cliente e o carro que vai reparar Comecei por criar a base de dados local dentro do visual studio 2017 .mdf Fiz a conexão e os testes as querys para testar tudo e funciona mas para exportar tenho de fazer a ligação/criação de outra maneira pois da maneira como fiz tenho o programa a ir buscar a uma pasta. O meu objetivo e publicar o programa para instalar num pc de um cliente Como tenho de fazer a criação/ligação da BD Exemplo codigo que tenho (carrega os dados na datagrid ao abrir a form ): using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Data.Common; using System.Configuration; using System.Data.SqlClient; private void Registos_Load(object sender, EventArgs e) { using (SqlConnection conn = new SqlConnection()) { // conn.ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\Ricardo\Desktop\aj\sss\AJ\AJ\clientes_carros.mdf;Integrated Security=True"; conn.ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\clientes_carros.mdf;Initial Catalog=BD;Integrated Security=True"; conn.Open(); SqlDataAdapter da = new SqlDataAdapter(); string sql = "select * from dados"; da = new SqlDataAdapter(sql, conn); DataTable dt = new DataTable(); da.Fill(dt); dataGridView1.DataSource = dt; } } Obrigado Link to post Share on other sites
M6 150 Posted January 1, 2018 Report Share Posted January 1, 2018 Partindo do principio de que levas atrás o motor do SQLServer (caso contrário poderás ter de instalar o Express ou ter um SQL Server "a sério"), a tua questão é simples de resolver. Tens duas hipóteses: #1 ou colocas o caminho da base de dados relativo ao caminho da tua aplicação, por exemplo num subdiretório "db" da tua aplicação, ou #2 tens um ficheiro de configuração que é criado durante a instalação e que indica o local da base de dados, (por exemplo um ficheiro .ini) e quando a tua aplicação arranca vai ver onde está a base de dados. 1 Report 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to post Share on other sites
rocks 0 Posted January 2, 2018 Author Report Share Posted January 2, 2018 17 horas atrás, M6 disse: Partindo do principio de que levas atrás o motor do SQLServer (caso contrário poderás ter de instalar o Express ou ter um SQL Server "a sério"), a tua questão é simples de resolver. Tens duas hipóteses: #1 ou colocas o caminho da base de dados relativo ao caminho da tua aplicação, por exemplo num subdiretório "db" da tua aplicação, ou #2 tens um ficheiro de configuração que é criado durante a instalação e que indica o local da base de dados, (por exemplo um ficheiro .ini) e quando a tua aplicação arranca vai ver onde está a base de dados. Ao publicar o programa umas das "funcionalidades " ponho para instalar juntamente com o programa é o SQL EXPRESS Penso que a primeira opção é a melhor ou seja colocar o caminho da bd num subdiretorio da aplicação, A minha questão é como fazer, ja tive a ver umas tópicos relativos à app.cofig e tambem aos caminhos de referencia será isso?? Se sim como o faço ? Obrigado Link to post Share on other sites
M6 150 Posted January 5, 2018 Report Share Posted January 5, 2018 Sim, é isso. Podes ver como ler o ficheiro aqui: https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.appsettings(v=vs.110).aspx 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to post Share on other sites
rocks 0 Posted January 5, 2018 Author Report Share Posted January 5, 2018 <connectionStrings> <add name="clientes_carros" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\clientes_carros.mdf;Initial Catalog=clientes_carros;Integrated Security=True"/> </connectionStrings> conn.ConnectionString = ConfigurationManager.ConnectionStrings["clientes_carros"].ConnectionString; Isto é o que tenho mas penso que desta maneira ainda não funciona, ainda nao conseguir testar mas acho que esta solução nao seja muito diferente da outra outra duvida ao publicar As features que escolho são o SQL Server 2012 Express LocalDB Será so isto ? Link to post Share on other sites
M6 150 Posted January 8, 2018 Report Share Posted January 8, 2018 O |DataDirectory| deverá ser suficiente. Quando à distribuição, não te posso ajudar uma vez que nunca usei o Express, vais mesmo ter de fazer testes. 1 Report 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now