Příručka uživatele Zrušit

Používání příkazů ASP k úpravě databáze v aplikaci Dreamweaver

 

 

Naučte se používat příkazy ASP v aplikaci Dreamweaver k úpravě databáze a přidání a spuštění uložené procedury.

Poznámka:

Uživatelské rozhraní v aplikaci Dreamweaver a jejích novějších verzích bylo zjednodušeno. Výsledkem je skutečnost, že některé možnosti uvedené v tomto článku nemusí být v aplikaci Dreamweaver a jejích novějších verzích k dispozici. Další informace naleznete v tomto článku.

O objektech příkazů ASP

Objekt příkazu ASP je serverový objekt, který provádí nějakou operaci s databází. Objekt může obsahovat libovolný platný příkaz SQL včetně příkazu, který vrací sadu záznamů nebo který vkládá, aktualizuje nebo odstraňuje záznamy z databáze. Objekt příkazu může měnit strukturu databáze v případě, že příkaz SQL přidá nebo odstraní sloupec tabulky. Objekt příkazu můžete také použít ke spuštění uložené procedury v databázi.

Objekt příkazu může být opakovaně použitelný v tom smyslu, že aplikační server může jednu kompilovanou verzi objektu použít k vícenásobnému provedení příkazu. Příkaz se stane opakovaně použitelným, pokud vlastnost Připravený objektu Příkaz nastavíte na hodnotu true, jako v následujícím výrazu VBScript:

mycommand.Prepared = true
mycommand.Prepared = true
mycommand.Prepared = true

Pokud víte, že bude příkaz spuštěn víckrát než jen několikrát, může vytvoření jedné zkompilované verze objektu přinést zefektivnění operací s databází.

Poznámka:

Připravené příkazy nejsou podporovány všemi databázovými poskytovateli. Pokud to vaše databáze nepodporuje, může při nastavení této vlastnosti na true zobrazit chybové hlášení. Může dokonce ignorovat požadavek o vytvoření připraveného objektu a nastavit vlastnost Připraven na false.

Objekt příkazu je vytvářen skripty na stránce ASP, ale aplikace Dreamweaver umožňuje vytvářet objekty příkazu bez nutnosti psát kód ASP.

Používání příkazů ASP k úpravě databáze

Pomocí aplikace Dreamweaver můžete vytvářet objekty příkazů ASP, které vkládají, aktualizují nebo odstraňují záznamy z databáze. Objektu příkazu můžete poskytnout výraz SQL nebo uloženou proceduru, které provedou operaci s databází.

  1. V aplikaci Dreamweaver otevřete stránku ASP, která bude spouštět příkaz.
  2. Otevřete panel Serverová chování (Okna > Serverová chování), klikněte na tlačítko plus (+) a vyberte volbu Příkaz.
  3. Zadejte název příkazu, vyberte připojení k databázi, která obsahuje záznamy, které chcete upravit, a vyberte operaci, kterou má příkaz provést – Vložení, Aktualizace nebo Odstranění.

    Aplikace Dreamweaver spustí výraz SQL, podle operace, kterou chcete provést. Například pokud vyberete vložení, dialogové okno vypadá jako v následujícím příkladu:

    Zadejte příkaz ASP
    Zadejte příkaz ASP

  4. Proveďte příkaz SQL.

    Informace o vytváření příkazů SQL, které upravují databázi, najdete v příručce Transact-SQL.

  5. V části Proměnné můžete definovat proměnné SQL. Zadejte název a hodnotu za běhu. Zadáním typu a velikosti všech proměnných předejdete útokům typu SQL injection.

    Následující příklad uvádí příkaz vložení se třemi proměnnými SQL. Hodnoty těchto proměnných jsou získány z parametrů URL předaných stránce, podle definice ve sloupci Hodnota za běhu v oblasti Proměnné.

    Příkaz vložení se třemi proměnnými SQL
    Příkaz vložení se třemi proměnnými SQL

    Hodnotu Velikost získáte pomocí panelu Databáze v aplikaci Dreamweaver. Vyhledejte databázi v panelu Databáze a rozbalte ji. Pak vyhledejte tabulku, s kterou pracujete, a rozbalte ji. Tabulka uvádí velikosti polí. Může zobrazovat například ADRESA (WChar 50). V tomto příkladu je velikost pole 50. Velikost můžete také zjistit ze své databázové aplikace.

    Poznámka:

    Typy Číselný, Booleovský a Datum/Čas vždy používají velikost -1.

    Hodnotu Typ zjistíte z následující tabulky:

    Typ v databázi

    Typ v aplikaci Dreamweaver

    Velikost

    Číselný (MS Access, MS SQL Server, MySQL)

    Dvojitá přesnost

    -1

    Booleovský, Ano/Ne (MS Access, MS SQL Server, MySQL)

    Dvojitá přesnost

    -1

    Datum/čas (MS Access, MS SQL Server, MySQL)

    DBTimeStamp

    -1

    Všechny ostatní typy textových polí, včetně textových datových typů MySQL char, varchar a longtext

    LongVarChar

    viz databázová tabulka

    Text (MS Access) nebo nvarchar, nchar (MS SQL Server)

    VarWChar

    viz databázová tabulka

    Memo (MS Access), ntext (MS SQL Server) nebo pole, do nichž lze uložit velké množství textu

    LongVarWChar

    1073741823

    Více informací o typech a velikostech proměnných SQL najdete na stránce www.adobe.com/go/4e6b330a.

  6. Zavřete dialogové okno.

    Aplikace Dreamweaver vloží do stránky kód ASP, který za běhu na serveru vytvoří příkaz, který vkládá, aktualizuje nebo odstraňuje záznamy z databáze.

    Standardně tento kód nastaví vlastnost Připravený objektu Příkaz na true, což znamená, že aplikační server použije jednu zkompilovanou verzi objektu při každém spuštění příkazu. Toto nastavení můžete změnit tak, že přepnete do zobrazení Kód a změníte vlastnost Připravený na false.

  7. Vytvořte stránku s formulářem HTML, aby uživatelé mohli zadávat data záznamu. Ve formuláři HTML použijte tři textová pole (txtCity, txtAddress a txtPhone) a tlačítko Odeslat. Formulář používá metodu GET a odesílá stránce, která obsahuje příkaz, hodnoty textových polí.

O uložených procedurách

Přestože můžete stránky, které mění databáze, vytvářet pomocí serverových chování, můžete k vytvoření takových stránek také použít objekty manipulující s databázemi, jako jsou uložené procedury, objekty příkazů ASP.

Uložená procedura je opakovatelně použitelná položka databáze, která s databází provede určitou operaci. Uložená procedura obsahuje kód SQL, který může, kromě jiného, vkládat, aktualizovat nebo odstraňovat záznamy. Uložené procedury mohou také měnit strukturu databáze. Například pomocí uložené procedury můžete přidat sloupec tabulky nebo i odstranit tabulku.

Uložená procedura také může volat další uloženou proceduru a také přijímat vstupní parametry a vracet i více hodnot proceduře, která ji volala, formou výstupních parametrů.

Uložená procedura je opakovatelně použitelná v tom smyslu, že můžete jednu zkompilovanou verzi procedury použít k více provedením operace s databází. Pokud víte, že bude úloha s databází provedena více než jen párkrát – nebo že bude tutéž úlohu provádět více aplikací – můžete použitím uložené procedury zefektivnit operace s databází.

Poznámka:

Databáze MySQL a Microsoft Access nepodporují uložené procedury.

Přidání uložené procedury (ColdFusion) (CS6)

Pomocí uložené procedury můžete upravit databázi. Uložená procedura je opakovatelně použitelná položka databáze, která s databází provede určitou operaci.

Dříve než můžete upravit databázi pomocí uložené procedury, zkontrolujte, zda uložená procedura obsahuje SQL, který nějak upraví databázi. Vytvoření a uložení procedury v databázi viz dokumentace k databázi a příručka Transact-SQL.

  1. V aplikaci Dreamweaver otevřete stránku, která bude spouštět uloženou proceduru.
  2. V panelu Svázání (Okna > Svázání) klikněte na tlačítko plus (+) a pak vyberte volbu Uložená procedura.
  3. Z rozbalovací nabídky Zdroj dat vyberte připojení k databázi, která obsahuje uloženou proceduru.
  4. Zadejte uživatelské jméno a heslo zdroje dat ColdFusion.
  5. Z rozbalovací nabídky Procedury vyberte uloženou proceduru.

    Aplikace Dreamweaver automaticky vyplní případné parametry.

  6. Vyberte parametr, a pokud chcete dělat změny, klikněte na tlačítko Upravit.

    Objeví se dialogové okno Úprava proměnné uložené procedury. V rámečku Název se zobrazí název proměnné, kterou upravujete.

    Poznámka:

    Je nutné zadat testovací hodnoty případných vstupních parametrů uložené procedury.

  7. Proveďte potřebné změny.
    • Z rozbalovací nabídky vyberte volbu Směr. Uložená procedura může mít vstupní hodnoty, výstupní hodnoty nebo vstupní a výstupní hodnoty.

    • Z rozbalovací nabídky vyberte volbu Typ SQL. Zadejte vrácenou proměnnou, hodnotu za běhu a testovací hodnotu.

  8. Pokud má uložená procedura vstupní parametr, klikněte na tlačítko plus (+) a přidejte parametr stránky.
    Poznámka:

    Pro každou vrácenou hodnotu parametru uložené procedury musíte zadat odpovídající parametry stránky. Parametry stránky nepřidávejte, pokud neexistuje odpovídající vrácená hodnota.

    Podle potřeby znovu klikněte na tlačítko plus (+) a přidejte další parametr stránky.

  9. Podle potřeby vyberte parametr stránky a kliknutím na tlačítko minus (–) ho odstraňte, nebo kliknutím na tlačítko Upravit parametr upravte.
  10. Vyberte volbu Vrací sadu záznamů s názvem a zadejte název sady záznamů; pokud uložená procedura vrací sadu záznamů; kliknutím na tlačítko Test zobrazte sadu záznamů, kterou uložená procedura vrací.

    Aplikace Dreamweaver spustí uloženou proceduru a zobrazí případnou sadu záznamů.

    Poznámka:

    Pokud uložená procedura vrací sadu záznamů a má vstupní parametry, je nutné do sloupce Výchozí hodnota v poli Proměnné zadat hodnotu, aby byla uložená procedura otestována.

    Poznámka:

    Můžete použít různé testovací hodnoty a generovat různé sady záznamů. Chcete-li změnit testovací hodnoty, klikněte na tlačítko Upravit pro Parametr a změňte testovací hodnotu, nebo klikněte na tlačítko Upravit pro Parametr stránky a změňte výchozí hodnotu.

  11. Pokud uložená procedura vrací hodnotu stavového kódu, vyberte volbu Vrací stavový kód s názvem a zadejte název stavového kódu. Klikněte na tlačítko OK.

    Po zavření okna vloží aplikace Dreamweaver do stránky kód ColdFusion, který za běhu kódu na serveru zavolá proceduru uloženou v databázi. Uložená procedura pak v databázi provede nějakou operaci, například vložení záznamu.

    Pokud má uložená procedura vstupní parametry, můžete vytvořit stránku, která shromáždí hodnoty parametrů a předá je stránce s uloženou procedurou. Například můžete vytvořit stránku, která pomocí parametrů URL nebo formuláře HTML shromáždí hodnoty parametrů od uživatelů.

Spuštění uložené procedury (ASP) (CS6)

U stránek ASP spustíte uloženou proceduru jen vložením objektu příkazu. Více informací o objektech příkazu viz část O objektech příkazů ASP.

  1. V aplikaci Dreamweaver otevřete stránku, která bude spouštět uloženou proceduru.
  2. V panelu Svázání (Okna > Svázání) klikněte na tlačítko plus (+) a vyberte volbu Příkaz (Uložená procedura).

    Objeví se dialogové okno Příkaz.

  3. Zadejte název příkazu, vyberte připojení k databázi, která obsahuje uloženou proceduru, a pak z rozbalovací nabídky Typ vyberte volbu Uložená procedura.
  4. Vyberte uloženou proceduru rozbalením větve Uložené procedury v poli Položky databáze, výběrem uložené procedury ze seznamu a kliknutím na tlačítko Procedura.
  5. Případné parametry zadejte do tabulky Proměnné.

    Nemusíte zadávat parametry proměnných RETURN_VALUE.

  6. Klikněte na tlačítko OK.

    Po zavření dialogového okna se do stránky vloží kód ASP. Při běhu kód na serveru tento kód vytvoří objekt příkazu, který spustí uloženou proceduru v databázi. Uložená procedura pak v databázi provede nějakou operaci, například vložení záznamu.

    Standardně tento kód nastaví vlastnost Připravený objektu Příkaz na true, což znamená, že aplikační server použije jednu zkompilovanou verzi objektu při každém spuštění uložené procedury. Pokud víte, že bude příkaz proveden více než jen párkrát, můžete použitím jedné zkompilované verze objektu zefektivnit operace s databází. Pokud ale bude příkaz spuštěn jen jednou nebo dvakrát, může použití jedné zkompilované verze objektu vaši webovou aplikaci zpomalit, protože systém musí pozastavit běh a příkaz zkompilovat. Toto nastavení můžete změnit tak, že přepnete do zobrazení Kód a změníte vlastnost Připravený na false.

    Poznámka:

    Připravené příkazy nejsou podporovány všemi databázovými poskytovateli. Pokud to vaše databáze nepodporuje, může se při spuštění stránky zobrazit chybové hlášení. Přepněte do zobrazení Kód a změňte vlastnost Připravený na false.

    Pokud má uložená procedura vstupní parametry, můžete vytvořit stránku, která shromáždí hodnoty parametrů a předá je stránce s uloženou procedurou. Například můžete vytvořit stránku, která pomocí parametrů URL nebo formuláře HTML shromáždí hodnoty parametrů od uživatelů.

Získejte pomoc rychleji a snáze

Nový uživatel?