Porady: wykonywanie procedury przechowywanej, która nie zwraca wartości
Aby wykonać procedurę przechowywaną, która zwraca wartość nie, można uruchomić kwerendę TableAdapter, która jest skonfigurowana do uruchamiania procedury przechowywanej (na przykład, CustomersTableAdapter.UpdateTableData(CustomersDataTable)).
Jeśli aplikacja nie używa TableAdapters, call ExecuteNonQuery metody obiektu polecenia, ustawienie jej CommandType właściwość, aby StoredProcedure.("Obiekt polecenia" odnosi się do określonego polecenia dla .NET Framework danych dostawcy aplikacja korzysta.Na przykład, jeśli aplikacja korzysta.Byłoby dostawcy danych programu NET Framework dla programu SQL Server, a następnie polecenie Obiekt SqlCommand.)
Następujące przykłady przedstawiają wykonanie procedur przechowywanych, które zwracają żadnej wartości z bazy danych, używając albo TableAdapters lub polecenia obiektów.Aby uzyskać więcej informacji dotyczących wykonywania kwerend z TableAdapters i poleceń, zobacz Wypełnianie zestawu danych danymi.
[!UWAGA]
Na komputerze w poniższych instrukcjach mogą być wyświetlane inne nazwy i lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio. Te elementy są określane przez numer wersji Visual Studio oraz twoje ustawienia. Aby uzyskać więcej informacji, zobacz Dostosowywanie ustawień środowiska deweloperskiego w Visual Studio.
Wykonywanie przechowywanych procedur, które zwracają żadnych wartości, przy użyciu TableAdapter
W tym przykładzie przedstawiono tworzenie przy użyciu kwerendy TableAdapter TableAdapter Kreator konfiguracji zapytania, a następnie zawiera informacje na temat zadeklarować wystąpienie TableAdapter i wykonanie kwerendy.
Aby utworzyć procedurę przechowywaną, która zwraca żadnej wartości, przy użyciu TableAdapter
Otwórz element dataset w Projektant Dataset.Aby uzyskać więcej informacji, zobacz Porady: otwieranie zestawu w narzędziu Projektant obiektów Dataset.
Jeśli nie masz już jeden utworzyć TableAdapter.Aby uzyskać więcej informacji na temat tworzenia TableAdapters, zobacz Porady: tworzenie TableAdapters.
Jeśli masz już kwerendę na swoje TableAdapter, który używa procedury przechowywanej, która zwraca wartość nie, przejdź do następnej procedury, "Aby"zadeklarować wystąpienie TableAdapter i wykonanie kwerendy. W przeciwnym razie przejdź do kroku 4, aby utworzyć nową kwerendę, która zwraca wartość nie.
Kliknij prawym przyciskiem myszy TableAdapter, który ma i dodać kwerendę za pomocą menu skrótów.
Kreatora konfiguracji kwerendy TableAdapter otwiera.
Wybierz wykorzystanie istniejącej procedury przechowywanej, a następnie kliknij przycisk Dalej.
Wybierz procedurę składowaną z listy rozwijanej, a następnie kliknij przycisk Dalej.
Wybierz opcję, aby powrócić żadnej wartości, a następnie kliknij przycisk Dalej.
Podaj nazwę dla tej kwerendy.
Kliknij przycisk Dalej, lub Zakończenie , aby zakończyć działanie kreatora; Kwerenda jest dodawana do TableAdapter.
Budowanie projektu.
Aby zadeklarować wystąpienie TableAdapter i wykonanie kwerendy
Stwierdzenie wystąpienie TableAdapter, który zawiera kwerendę, którą chcesz wykonać.
Aby utworzyć wystąpienie przy użyciu narzędzia projektowania, przeciągnij TableAdapter, który z Przybornik.(Składniki w projekcie są teraz wyświetlane w Przybornik pod nagłówkiem, który odpowiada nazwie użytkownika projektu.) Jeśli TableAdapter nie są wyświetlane w Przybornik, a następnie trzeba tworzyć projekty.
- lub -
Aby utworzyć wystąpienie w kodzie, zamień następujący kod z nazwy użytkownika DataSet i TableAdapter.
Dim tableAdapter As New DataSetTableAdapters.TableAdapter
[!UWAGA]
Faktycznie TableAdapters nie znajdują się wewnątrz ich klas skojarzonych dataset.Każdy zestaw danych ma odpowiedni zbiór TableAdapters w swoich własnych nazw.Na przykład, jeśli masz dataset, o nazwie SalesDataSet, a następnie byłoby SalesDataSetTableAdapters obszaru nazw, który zawiera jej TableAdapters.
Wywołanie kwerendy, jak możesz wywołać inną metodą w kodzie.Kwerenda jest metoda na TableAdapter.Zamień następujący kod o nazwach TableAdapter i kwerendy.Należy również przekazywać w żadnych parametrów wymaganych przez kwerendę.Jeśli nie jesteś pewien, jeśli kwerenda wymaga parametrów, lub parametry, jakich wymaga on następnie sprawdź IntelliSense wymagany podpis kwerendy.W zależności od tego, czy kwerenda pobiera parametry, lub nie kod wyglądałby podobny do jednego z następujących przykładów:
TableAdapter.Query()
TableAdapter.Query(Parameters)
Kompletny kod deklaruje instancję TableAdapter i wykonanie kwerendy powinien wyglądać podobny do następującego:
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");
Wykonywanie przechowywanych procedur, które zwracają żadnej wartości za pomocą obiektu polecenie
Poniższy przykład pokazuje, jak utworzyć polecenie i wykonaj procedurę przechowywaną, która zwraca wartość nie.Aby uzyskać informacje na ustawianie i pobieranie wartości parametrów dla polecenia, zobacz Porady: ustawianie i pobieranie parametrów dla obiektów poleceń.
W tym przykładzie użyto SqlCommand obiektu i wymaga:
- Odniesienia do System, System.Data, i System.Xml obszarów nazw.
Wykonanie procedury przechowywanej, która zwraca żadnej wartości, przy użyciu DataCommand
Dodaj następujący kod do metody, która ma być wykonaj procedurę przechowywaną z.Wywołanie ExecuteNonQuery metoda polecenie zwraca wartość nie (na przykład, 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();
Zabezpieczenia
Aplikacja wymaga uprawnień do dostępu do bazy danych i wykonywanie instrukcji SQL.
Zobacz też
Zadania
Porady: tworzenie zapytań TableAdapter
Porady: edytowanie zapytań TableAdapter
Porady: wypełnianie zestawu danych danymi
Porady: ustawianie i pobieranie parametrów dla obiektów poleceń