03. december 2007 - 10:26Der er
6 kommentarer og 2 løsninger
Flere sql commandoer på 1 connection
Hej jeg har arbejdet med C# i et par uger nu, men en ting der undre mig er måde man omgås med sql på :D
f.eks. hvis jeg skal udføre 2 sql comandoer skal jeg gøre sådan her.
Kan det virkelige passe at jeg skal åbne og lukke forbindelsen 2 gange for at kunne gøre dette?
string sql = "SELECT * FROM tabel 1"; using (SqlConnection cnn = new SqlConnection(this.cfg.getConnString())) { using (SqlCommand cmd = new SqlCommand(sql, cnn)) { cnn.Open(); using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { return true; } dr.Close(); } } }
string sql = "SELECT * FROM tabel 2"; using (SqlConnection cnn = new SqlConnection(this.cfg.getConnString())) { using (SqlCommand cmd = new SqlCommand(sql, cnn)) { cnn.Open(); using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { return true; } dr.Close(); } } }
Skal virksomheder stå stærkere mod angreb og kunne udvikle sig, skal sikkerhed, drift og forretning tænkes sammen. Det er tanken bag Jysk IT’s ambition om at skabe en “sikker fremtid” for kunderne.
et helved og arbejde med kode direkte på E:) men det muligt.. du skal bare lukke din datareader og ikke sende CloseConnection med i din command før du er ved det er sidste kald du laver...
Ja vil rigtig gerne lære at arbejde med det direkte i Visual C# men har ikke kunne finde nogen guide til det :( hvis i kender en god guide må i meget gerne skrive et link. Har ikke lige haft tid til at teste det endnu, så venter lige lidt med at accepter jeg svar :D
using (SqlConnection cnn = new SqlConnection(this.cfg.getConnString())) { cnn.Open(); string sql = "SELECT * FROM tabel 1"; using (SqlCommand cmd = new SqlCommand(sql, cnn)) { using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { // process dr } } }
string sql = "SELECT * FROM tabel 2"; using (SqlCommand cmd = new SqlCommand(sql, cnn)) { cnn.Open(); using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { // process dr } } } }
using (SqlConnection cnn = new SqlConnection(this.cfg.getConnString())) { cnn.Open(); string sql = "SELECT * FROM tabel 1"; using (SqlCommand cmd = new SqlCommand(sql, cnn)) { using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { // process dr } } }
string sql = "SELECT * FROM tabel 2"; using (SqlCommand cmd = new SqlCommand(sql, cnn)) { using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) { while (dr.Read()) { // process dr } } } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.