*   >> Lezen Onderwijs artikelen >> science >> programming

Een Trigger Voorbeeld in Sybase SQL Anywhere

D INTEGER DEFAULT AUTOINCREMENT, DateAndTime TIMESTAMP STANDAARD TIMESTAMP, ProductName CHAR (40), EventMessage CHAR (60) STANDAARD 'heeft onder gegaan herschikken niveau ', ReorderLevel INTEGER, CurrentLevel INTEGER, PRIMARY KEY (EventID ASC)); Merk op dat de standaard boodschap string in enkele aanhalingstekens. - Nu, lezen en typ het volgende om een ​​trigger (wissen alle eerder getypte verklaring) te maken: CREATE TREKKER InformManager NA UPDATE ORDE OP 2 producten REFERENCING NEW AS NewRow voor elke rij begint Als newRow.

Number INSERT INTO Manager (ProductName, ReorderLevel, CurrentLevel ) WAARDEN (newRow.ProductName, newRow.ReorderLevel, newRow.Number); STOP ALS; EINDE; Het moet zijn gemaakt en opgeslagen. Hier, in "newRow.ProductName" en "newRow.ReorderLevel", ProductName en ReorderLevel zijn van de producten tafel en niet de manager tafel. Er is een regel die begint met IF en andere lijn met "End If" in de trigger code. Ik zal deze lijnen later in detail uit te leggen.

Voor nu, weet alleen dat deze regels te controleren of de hoeveelheid (aantal) van het product voor de rij minder is dan of gelijk aan de reorderlevel. Als dat het geval is, dan een rij zal worden ingebracht in de tafel van de Beheerder, door de verklaring invoegen tussen de twee lijnen. Het volgende wat te doen is om een ​​SQL-update instructie uit te voeren om het aantal van een product te maken in de tabel producten een waarde onder de bestelniveau. Laten we dit doen voor het product, Spoon.

- Lees en typ de volgende update verklaring (wissen eerste): UPDATE producten SET Number = 10 WAAR ProductName = 'Spoon'; Nu moeten we controleren of de trekker werd ontslagen en de gebeurtenis vastgelegd in de tabel, Manager. Om dit te doen. - Lees en typ de volgende SELECT-instructie (wissen eerste): SELECT * FROM Manager; Je moet het evenement verslag te zien. Nou, het is waar dat de trigger een probleem heeft opgelost. Er zijn echter gerelateerd problemen niet heeft opgelost. Er is een keten van gebeurtenissen die beginnen vanaf Sales.

De verkoopster verkoopt een product en het invoeren van de informatie in de Sales en SaleDetails tafels. Dat is al een gebeurtenis, die zijn eigen trekker zou moeten hebben. Het moet worden geverifieerd, indien de hoeveelheid van de klant vraagt ​​is op voorraad (producten tabel). Zodat de gevraagde hoeveelheid moet worden afgetrokken van de hoeveelheid in de tabel producten, zonder dat het bijwerken van de lijst van producten, maar toch. Als het verschil

Page   <<  [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.