Din dataåtkomstkod bör i allmänhet se ut så här:
string sql = "SELECT * FROM Employee e INNER JOIN Clock_History c ON c.Badge = e.Badge WHERE e.Badge = @BadgeID";
using (var cn = new OracleConnection("your connection string here"))
using (var cmd = new OracleCommand(sql, cn))
{
cmd.Parameters.Add("@BadgeID", OracleDbType.Int).Value = Badge;
cn.Open();
xHoursGridView.DataSource = cmd.ExecuteReader();
xHoursGridView.DataBind();
}
Observera att detta bara är den allmänna mallen. Du vill justera det lite för dina exakta behov. De viktiga sakerna att ta från detta är using
block för att korrekt skapa och kassera ditt anslutningsobjekt och parametern för att skydda mot sql-injektion.
När det gäller anslutningsfrågan finns det undantag men du kan vanligtvis bara använda en anslutning för en aktiv resultatuppsättning åt gången. Så du kunde återanvänd samma conn
objekt från din ursprungliga kod, men först efter att du är helt klar med det från föregående kommando. Det är också okej att öppna upp två anslutningar om du behöver dem. Det bästa Alternativet är dock att kombinera relaterade frågor till en enda SQL-sats när det är möjligt.