Citat:
gewra: Drugi problem je u tome da kada kreiram bazu ne znam kako da se konektujem na nju, pa da onda u njoj pravim tabele jednostavnim Create Table. Dakle mogao bi da promenim ceo connection string (u prvom slucaju je "server=localhost; integrated security=sspi", a u drugom isto to + "database=ime_baze"), ali onda bi morao prvo da zatvorim konekciju sa bazom pa da je opet otvaram sto mi se cini malo neoptimizovano.
Samo ti napravi drugi connection string. Prvi koristi za konektovanje na master bazu i proveru da li postoji tvoja baza (ako ne napravis je) a kasnije u programu stalno koristis drugi connection string. Vidim da spominjes otvaranje i zatvaranje konekcija i da mislis da je to ne optimizovano. Pretpostavljam da mislis imati jednu konekciju i sve raditi sa njom. Ako je tako, nemoj to raditi. Za svaki SQL upit, izvrsavanje stored procedure pravis jednu konekciju i po zavrsetku je zatvars. C# ima ugradjen
connection pool koji po otvaranju prve konekcije ka bazi sa jednim connection stringom pravi pool sa 10 otvorenih konekcija (ili ti vec neki unapred odredjen broj). Sledeci put kada kreiras konekciju i upotrebis isti connection string on ne otvara novu konekciju vec uzima slobodnu konekciju iz pool-a. Evo ti jedan primer:
Code:
SqlConnection con = new SqlConnection(<tvoj connection string>);
SqlCommand cmd = null;
SqlDataReader reader = null;
String S = "";
try {
con.Open();
cmd = con.CreateCommand();
cmd.CommandText = "select name from dbo.sysdatabases";
reader = cmd.ExecuteReader();
while(reader.Read()) S += reader.GetString(0) + "\n";
}
catch (Exception ex){
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
} finally {
try { if(con != null) con.Close(); } catch(Exception) { }
try { if(cmd != null) cmd.Dispose(); } catch(Exception) { }
try { if(reader != null) reader.Close(); } catch(Exception) { }
}
MessageBox.Show(S);
Citat:
gewra:
E da ako neko ima pojma dal' je moguce integrisati i sql server u aplikaciju bilo bi super da mi bar nagovesti kako.
Ajd sad zdravo!
Ako si mislio nesto slicno sqlite (database engine u jednom fajlu) MSSQL server nema nista slicno. Moras instalirati server.