sql >> Database >  >> RDS >> Sqlserver

Meerdere tabellen retourneren vanuit een opgeslagen procedure

De normale manier is om alles tegelijk te krijgen.

maak gewoon uw SELECT 's en je hebt een DataSet gevuld met alle tabellen.

using (System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(myConnString))
{
    using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
    {
        cmd.CommandText = "myMultipleTablesSP";
        cmd.Connection = conn;
        cmd.CommandType = CommandType.StoredProcedure;

        conn.Open();

        System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter(cmd);

        DataSet ds = new DataSet();
        adapter.Fill(ds);

        conn.Close();
    }
}

als je bijvoorbeeld 2 tabellen in je SP retourneert, zoals:

SELECT * FROM [TableA];
SELECT * FROM [TableB];

je zou toegang krijgen tot deze tabellen als:

DataTable tableA = ds.Tables[0];
DataTable tableB = ds.Tables[1];


  1. DateDiff om uren en minuten uit te voeren

  2. MariaDB Cluster offline installatie voor CentOS

  3. Index op tijdstempel:functies in indexexpressie moeten worden gemarkeerd als IMMUTABLE

  4. Wat zijn de verschillen tussen een geclusterde en een niet-geclusterde index?