Home > Mysql > mysql - Werken met Stored Procedure

MySql - Werken met Stored Procedure

Stored Procedures zijn eenvoudig SQL-statements die al zijn verwerkt en opgeslagen op server-uiteinde. Dit verhoogt de prestaties in termen van tijd genomen om gegevens als minimale informatie te halen zal erdoor te krijgen via het netwerk. Het andere voordeel dat de opgeslagen procedures is het veiligheidsaspect, we hoeven niet te schrijven Query Sql aan de bron code, zullen we nu rechtstreeks contact opnemen met de opgeslagen procedure en MySQL query uit te voeren zal het op zijn einde. In dit artikel zullen we leren hoe in MySQL opgeslagen procedures, al ben ik heel simpel uitleggen query uitgevoerd binnen opgeslagen procedure, maar zal u vertellen hoe we te werk opgeslagen in MySQL..

Ter vereenvoudiging van deze tutorial zullen we stap voor stap verder gaan:

We zullen werken aan een test tabel voor onze procedure bijvoorbeeld:
Maak Test Tabel Syntax:

  id int NOT NULL PRIMARY KEY AUTO_INCREMENT , name varchar ( 100 ) , designation varchar ( 100 ) ) CREATE TABLE test (id int NOT NULL PRIMARY KEY AUTO_INCREMENT, naam varchar (100), de aanduiding varchar (100)) 

Nu zullen we voegen een aantal records in deze tabel:

  name , designation ) VALUES ( 'ABC' , 'Software Engineer' ) ; INSERT INTO test (naam, omschrijving) VALUES ('ABC', 'Software Engineer');
	 name , designation ) VALUES ( 'PQR' , 'Team Leader' ) ; INSERT INTO test (naam, omschrijving) VALUES ('PQR', 'Team Leader "); 

Uw e-mailadres:


Nu onze tafel zal moeten volgende gegevens:

Id Naam Aanwijzing
1 ABC Software Engineer
2 PQR Team Leader


Drop is al gemaakt opgeslagen procedure in MySQL:

  test; DROP procedure als deze bestaat test; 

Reguliere expressie in MySQL

Nieuwe opgeslagen procedure in MySQL:

	 BEGIN SELECT name , designation FROM test; END CREATE PROCEDURE test () te beginnen, kies naam, benaming van test; END 

Alle sql verklaringen die dient uitgevoerd te worden tijdens het uitvoeren van procedures moet worden tussen begin en einde.

Bellen Stored Procedure van MySQL:

  call-test (); 

Op het uitvoeren van de query hierboven krijgen we volgende output:

Naam Aanwijzing
ABC Software Engineer
PQR Team Leader


Maak opgeslagen procedure met parameter in MySQL:

  desg varchar ( 100 ) ) CREATE PROCEDURE test1 (desg varchar (100))
	 BEGIN
	     designation FROM test WHERE designation = desg; SELECT naam, benaming van test waarbij de aanwijzing = desg;
	 EINDE 

Bellen opgeslagen procedure met parameters van MySQL:

  ) ; test1 oproep ('Team Leader "); 

Op het uitvoeren van de query hierboven krijgen we volgende output:

Naam Aanwijzing
PQR Team Leader


Custom Search

Populaire artikelen:

Share and Enjoy:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • IndianPad
  • LinkedIn
  • Live
  • MySpace
  • Netvibes
  • RSS
  • Technorati
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Reddit
  • Add to favorites
  • PDF
  • Twitter
Tags: Categorieën: Mysql Tags:
  1. Neema Tiwari
    6 jan 2009 om 22:01 | # 1

    Mooi uitgelegd ....

  2. Manoj Patil
    27-02-2009 om 23:57 | # 2

    hi,
    Mooi uitgelegd, maar het werkt niet op MySQL 5.0 verschijnen de volgende fout-

    "# 1064 - Je hebt een fout in uw SQL syntax; Raadpleeg de handleiding van uw MySQL server versie komt overeen met de juiste syntax om de buurt te gebruiken" "

    kunt u mij uitleggen waar ik verkeerd?

  3. 14.3.2009 om 05:16 | # 3

    Ik moet zeggen, dat kon ik niet met u eens in de 100%, maar het is gewoon mijn IMHO, die inderdaad zou zeer verkeerd zijn.
    ps Je hebt een zeer goede sjabloon voor uw blog. Waar heb je het vandaan?

  4. Rajeev
    22 apr 2009 om 22:47 | # 4

    Geachte Hitesh

    Het werkt niet tonen hieronder fout:

    # 1064 - Je hebt een fout in uw SQL syntax; Raadpleeg de handleiding van uw MySQL server versie komt overeen met de juiste syntax om de buurt te gebruiken "op lijn 3

  5. 18/06/2010 om 09u44 | # 5

    Hey allemaal,
    Ik heb het probleem bedacht, eigenlijk moet je allemaal geprobeerd uit mysql console.

    Door standaard MySQL verklaring eindigt met puntkomma (;) dus toen we eind van de SQL-query met puntkomma, mysql veronderstellen dat het nu tijd is om query uit te voeren.

    Als u de bovenstaande opdracht in mysql query browser het werkt prima.

    Om voorrang hebben op de puntkomma zullen we moeten DELIMITER gebruik te maken alvorens te bellen procedure, zodat de bovenstaande procedure eruit zal zien.

    DELIMITER / /
    CREATE PROCEDURE test ()
    select * from test;
    EINDE
    DELIMITER;

    DELIMITER / / - zegt de set die we nu hebben / / als het einde van de verklaring, dit zal ons helpen bij het schrijven van stored procedure.

    DELIMITER; - Dit zal weerom het einde van de verklaring van de puntkomma

    Cheers,
    Hitesh Agarwal

  1. Nog geen trackbacks.