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(); } } }
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.