Sdílet prostřednictvím


Jak: spustit uloženou proceduru, která vrací hodnotu žádné

Spustit uloženou proceduru, která vrací hodnotu Žádný, můžete spuštěním dotazu TableAdapter, který je konfigurován na spuštění uložené procedury (například CustomersTableAdapter.UpdateTableData(CustomersDataTable)).

Pokud aplikace nepoužívá TableAdapters, volání ExecuteNonQuery metodu objektu příkaz, nastavení jeho CommandType vlastnost StoredProcedure.("Příkaz objekt" odkazuje na konkrétní příkaz .NET Framework Data Provider vaší aplikace.Pokud aplikace používá například.NET Framework pro SQL Server a potom na příkaz objekt by SqlCommand.)

Následující příklady ukazují způsob spuštění uložené procedury, které vracejí bez hodnoty z databáze pomocí buď TableAdapters nebo příkaz objekty.Další informace o dotazování s TableAdapters a příkazy, viz Vyplňování objektů DataSet s daty.

[!POZNÁMKA]

Ve vašem počítači se pro některé z prvků uživatelského rozhraní sady Visual Studio mohou zobrazit jiné názvy a umístění, než jsou uvedeny v následujících pokynech. Tyto prvky jsou určeny verzí aplikace Visual Studio a použitým nastavením. Další informace naleznete v tématu Nastavení aplikace Visual Studio.

Spouštění uložených procedur, které žádné hodnoty pomocí TableAdapter

Tento příklad ukazuje, jak lze vytvořit pomocí dotazu TableAdapter Průvodce konfigurací TableAdapter dotaz, a pak obsahuje informace o deklarovat instance TableAdapter a spuštění dotazu.

Vytvořte uloženou proceduru, která vrátí hodnotu, bez použití TableAdapter

  1. Otevřete objekt dataset v Dataset Návrhář.Další informace naleznete v tématu Jak: Otevřete Návrhář Dataset objektu Dataset.

  2. Pokud již nemáte jednu vytvořit TableAdapter.Další informace o vytváření TableAdapters viz Jak: vytvoření TableAdapters.

  3. Pokud již máte dotaz na vaše TableAdapter používající uloženou proceduru, která vrací hodnotu Žádný, přejděte na další postup, "deklarovat instance TableAdapter a spuštění dotazu. Jinak pokračujte krokem 4 vytvořte nový dotaz, který vrátí hodnotu žádná.

  4. Tlačítkem TableAdapter, který má a přidat dotaz pomocí místní nabídky.

    TableAdapter dotazu konfigurace Průvodce otevře.

  5. Vyberte použít existující uložené procedurya klepněte na tlačítko Další.

  6. Z rozevíracího seznamu vyberte uloženou proceduru a klepněte na tlačítko Další.

  7. Vyberte možnost vrátit žádná hodnotaa klepněte na tlačítko Další.

  8. Zadejte název dotazu.

  9. Klepněte na tlačítko Další, nebo Dokončit Průvodce; dotaz je přidán do TableAdapter.

  10. Sestavte projekt.

Deklarovat instance TableAdapter a spuštění dotazu

  1. Deklarujte instance TableAdapter, který obsahuje dotaz, který chcete spustit.

    • Chcete-li vytvořit instanci pomocí nástrojů návrhu, přetáhněte TableAdapter, ze nástrojů.(Součástí projektu se zobrazí v nástrojů pod nadpisem, který odpovídá názvu vašeho projektu.) Pokud TableAdapter se nezobrazí v nástrojů, je třeba sestavit projekt.

      -nebo-

    • Chcete-li vytvořit instanci v kódu, nahraďte následující kód názvy vaše DataSet a TableAdapter.

      Dim tableAdapter As New DataSetTableAdapters.TableAdapter

      [!POZNÁMKA]

      TableAdapters není ve skutečnosti umístěn uvnitř jejich třídy přidružený objekt dataset.Každý objekt dataset obsahuje odpovídající kolekci TableAdapters ve vlastním oboru názvů.Například pokud máte dataset s názvem SalesDataSet, pak by bylo SalesDataSetTableAdapters oboru názvů, který obsahuje jeho TableAdapters.

  2. Volání dotaz jako jiné metody by volání v kódu.Dotaz je metoda na TableAdapter.Následující kód nahraďte názvy TableAdapter a dotaz.Také je třeba předat parametry požadované podle vašeho dotazu.Pokud si nejste jisti, zda dotaz vyžaduje parametry nebo parametry, jaké vyžaduje, zkontrolujte IntelliSense pro požadovaný podpis dotazu.V závislosti na tom, zda dotaz má parametry nebo ne kód vypadat podobně jako jednu z následujících příkladů:

    TableAdapter.Query()

    TableAdapter.Query(Parameters)

    Kód dokončení deklarovat instance TableAdapter a spuštění dotazu by měl vypadat jako následující:

    Dim tableAdapter As New NorthwindDataSetTableAdapters.CustomersTableAdapter()
    
    Dim rowsAffected As Integer
    rowsAffected = CType(tableAdapter.UpdateContactTitle("Sales Manager", "ALFKI"), Integer)
    
    NorthwindDataSetTableAdapters.CustomersTableAdapter tableAdapter = 
        new NorthwindDataSetTableAdapters.CustomersTableAdapter();
    
    int rowsAffected = tableAdapter.UpdateContactTitle("Sales Manager", "ALFKI");
    

Spouštění uložených procedur, které vrací žádné hodnoty pomocí příkazu objekt

Následující příklad ukazuje, jak vytvořit příkaz a spustit uloženou proceduru, která vrací hodnotu žádná.Informace o nastavení a získání hodnoty parametru příkazu, Jak: nastavení a získat parametry příkazu objekty.

V tomto příkladu SqlCommand objektu a vyžaduje:

Spustit uloženou proceduru, která vrátí hodnotu, bez použití DataCommand

  • Přidejte následující kód na metodu, kterou chcete spustit uloženou proceduru z.Volání ExecuteNonQuery metoda příkaz vrátit žádnou hodnotu (například ExecuteNonQuery).

    Dim sqlConnection1 As New SqlConnection("Your Connection String")
    Dim cmd As New SqlCommand
    Dim rowsAffected As Integer
    
    cmd.CommandText = "StoredProcedureName"
    cmd.CommandType = CommandType.StoredProcedure
    cmd.Connection = sqlConnection1
    
    sqlConnection1.Open()
    
    rowsAffected = cmd.ExecuteNonQuery()
    
    sqlConnection1.Close()
    
    SqlConnection sqlConnection1 = new SqlConnection("Your Connection String");
    SqlCommand cmd = new SqlCommand();
    Int32 rowsAffected;
    
    cmd.CommandText = "StoredProcedureName";
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    
    rowsAffected = cmd.ExecuteNonQuery();
    
    sqlConnection1.Close();
    

Zabezpečení

Aplikace vyžaduje oprávnění k přístupu do databáze a spustit příkaz SQL.

Viz také

Úkoly

Jak: vytvoření TableAdapter dotazy

Jak: úpravy TableAdapter dotazy

Jak: výplň objektu Dataset s daty

Jak: nastavení a získat parametry příkazu objekty

Referenční dokumentace

SqlCommand.ExecuteNonQuery

OleDbCommand.ExecuteNonQuery

OdbcCommand.ExecuteNonQuery

OracleCommand.ExecuteNonQuery

Koncepty

Vyplňování objektů DataSet s daty