Sdílet prostřednictvím


Jak: změnit Data v databázi pomocí LINQ (Visual Basic)

Integrované jazyka dotazů (LINQ dotazu) usnadňují přístup k informacím v databázi a změnit hodnoty v databázi.

Následující příklad ukazuje jak vytvořit novou aplikaci načítající a aktualizace informací v databázi serveru SQL Server.

Příklady v tomto tématu použít ukázkovou databázi Northwind.Pokud ukázkovou databázi Northwind ve vývojovém počítači nemáte, můžete ji stáhnout z Microsoft Download Center webu.Pokyny naleznete v části Downloading Sample Databases (LINQ to SQL).

Vytvoření připojení k databázi

  1. Otevřít v aplikaci Visual Studio Server Explorer/Explorer databáze klepnutím zobrazení nabídce a pak vyberte Server Explorer/Explorer databáze.

  2. Pravým tlačítkem myši na Připojení dat v Server Explorer/Explorer databázea klepněte na tlačítko Přidat připojení.

  3. Zadejte platné připojení k ukázkové databázi Northwind.

Přidat SQL souboru projektu s LINQ

  1. V aplikaci Visual Studio na soubor nabídce přejděte na Nový a klepněte na tlačítko projektu.Výběr jazyka Visual Basic Model Windows Forms aplikace jako typ projektu.

  2. V nabídce Projekt klikněte na příkaz Přidat novou položku.Vyberte LINQ třídy SQL položku šablony.

  3. Název souboru northwind.dbml.Klikněte na tlačítko Přidat.Otevření relační Object Designer (Návrhář O/R) northwind.dbml souboru.

Přidání dotazování a úpravy na Návrhář tabulky

  1. V Server Explorer/Explorer databáze, rozbalte připojení k databázi Northwind.Rozbalte tabulek složky.

    Zavřeno O/R Designer můžete znovu otevřít jej poklepáním northwind.dbml soubor, který jste přidali dříve.

  2. Klepněte na tabulku Zákazníci a přetáhněte ho do levého podokna Návrháře.

    Návrhář vytvoří nový objekt zákazníka projektu.

  3. Uložte změny a zavřete Návrhář.

  4. Uložte projekt.

Přidat kód upravit databázi a zobrazit výsledky

  1. Z nástrojů, přetáhněte DataGridView řízení do výchozího formuláře systému Windows pro váš projekt Form1.

  2. Po přidání tabulky do Návrháře O/R Návrhář přidány DataContext objektu do projektu.Tento objekt obsahuje kód, který můžete použít pro přístup k tabulce Zákazníci.Také obsahuje kód, který definuje místní objekt zákazníka a kolekce pro tabulku Zákazníci.DataContext Objektu pro projekt s názvem na základě názvu souboru .dbml.Pro tento projekt DataContext s názvem objektu northwindDataContext.

    Můžete vytvořit instanci DataContext objektu v kódu a dotaz a upravit kolekci zákazníkům určit návrhář O/R.Změny provedené v kolekci zákazníci v databázi neprojeví dokud odeslání voláním SubmitChanges metodu DataContext objektu.

    Poklepejte na položku Windows formuláře, formulář1, přidání kódu Load událost dotazu tabulky Zákazníci, který se projevuje jako vlastnost vaše DataContext.Přidejte následující kód:

    Private db As northwindDataContext
    
    Private Sub Form1_Load(ByVal sender As System.Object, 
                           ByVal e As System.EventArgs
                          ) Handles MyBase.Load
      db = New northwindDataContext()
    
      RefreshData()
    End Sub
    
    Private Sub RefreshData()
      Dim customers = From cust In db.Customers 
                      Where cust.City(0) = "W" 
                      Select cust
    
      DataGridView1.DataSource = customers
    End Sub
    
  3. Z nástrojů, přetáhněte tři Button ovládacích prvků do formuláře.Vyberte první Button řízení.V Vlastnosti okno, nastavte Name z Button řízení na AddButton a Text na Přidat.Vyberte druhé tlačítko a nastavte Name vlastnost UpdateButton a Text vlastnost aktualizace.Třetí tlačítko Vybrat a nastavit Name vlastnost DeleteButton a Text vlastnost Odstranit.

  4. Poklepejte Přidat tlačítko Přidat kód a jeho Click událostí.Přidejte následující kód:

    Private Sub AddButton_Click(ByVal sender As System.Object, 
                                ByVal e As System.EventArgs
                               ) Handles AddButton.Click
      Dim cust As New Customer With { 
        .City = "Wellington", 
        .CompanyName = "Blue Yonder Airlines", 
        .ContactName = "Jill Frank", 
        .Country = "New Zealand", 
        .CustomerID = "JILLF"}
    
      db.Customers.InsertOnSubmit(cust)
    
      Try
        db.SubmitChanges()
      Catch
        ' Handle exception.
      End Try
    
      RefreshData()
    End Sub
    
  5. Poklepejte aktualizace tlačítko Přidat kód a jeho Click událostí.Přidejte následující kód:

    Private Sub UpdateButton_Click(ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs
                                  ) Handles UpdateButton.Click
      Dim updateCust = (From cust In db.Customers 
                        Where cust.CustomerID = "JILLF").ToList()(0)
    
      updateCust.ContactName = "Jill Shrader"
    
      Try
        db.SubmitChanges()
      Catch
        ' Handle exception.
      End Try
    
      RefreshData()
    End Sub
    
  6. Poklepejte Odstranit tlačítko Přidat kód a jeho Click událostí.Přidejte následující kód:

    Private Sub DeleteButton_Click(ByVal sender As System.Object, _
                                   ByVal e As System.EventArgs
                                  ) Handles DeleteButton.Click
      Dim deleteCust = (From cust In db.Customers 
                        Where cust.CustomerID = "JILLF").ToList()(0)
    
      db.Customers.DeleteOnSubmit(deleteCust)
    
      Try
        db.SubmitChanges()
      Catch
        ' Handle exception.
      End Try
    
      RefreshData()
    End Sub
    
  7. Stisknutím klávesy F5 spuštění projektu.Klepněte na tlačítko Přidat přidejte nový záznam.Klepněte na tlačítko aktualizace upravovat nový záznam.Klepněte na tlačítko Odstranit nový záznam odstranit.

Viz také

Úkoly

How to: Assign Stored Procedures to Perform Updates, Inserts, and Deletes (O/R Designer)

Walkthrough: Creating LINQ to SQL Classes (O/R Designer)

Koncepty

DataContext Methods (O/R Designer)

Další zdroje

LINQ v jazyce Visual Basic

Dotazy (Visual Basic)

LINQ to SQL