Sdílet prostřednictvím


Postupy: Provedení uložené procedury, jež nevrací žádnou hodnotu

 

Publikováno: srpen 2016

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 Vyplnění datové sady pomocí TableAdapter.

Poznámka

Váš počítač může v následujících pokynech zobrazovat odlišné názvy nebo umístění některých prvků uživatelského rozhraní sady Visual Studio. Tyto prvky jsou určeny edicí sady Visual Studio a použitým nastavením. Další informace najdete v tématu Přizpůsobení integrovaného vývojového prostředí sady 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 TableAdapters – úpravy, 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 Postupy: Otevření datové sady v Návrháři DataSet.

  2. Pokud již nemáte jednu vytvořit TableAdapter. Další informace o vytváření TableAdapters viz Vytvořit a konfigurovat objekty TableAdapter.

  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í:

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

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, Postupy: Nastavování a získávání parametrů pro objekty příkazu.

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).

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

Zabezpečení rozhraní .NET Framework

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

Viz také

SqlCommand.ExecuteNonQuery
OleDbCommand.ExecuteNonQuery
OdbcCommand.ExecuteNonQuery
OracleCommand.ExecuteNonQuery
Postupy: Vytváření dotazů TableAdapter
Postupy: Upravování dotazů TableAdapter
Postupy: vyplnění datové sady daty
Vyplnění datové sady pomocí TableAdapter
Postupy: Nastavování a získávání parametrů pro objekty příkazu