SQL somo la 19: Stored Procedure katika MySQL na Tofauti na Function
Somo hili ni muendelezo wa pale tulipoishia katika somo lililopita, hapa tutakwenda kusoma Stored Procedure katika MySQL na Tofauti na Function
Stored Procedure katika MySQL na Tofauti na Function
Malengo ya Somo:
-
Kuelewa maana ya Stored Procedure katika MySQL.
-
Kujifunza jinsi ya kuunda na kutumia Stored Procedures.
-
Kufahamu tofauti kati ya Stored Procedures na Functions.
1. Stored Procedure ni nini?
Stored Procedure ni seti ya taarifa za SQL ambazo zimehifadhiwa katika database na zinaweza kuitwa ili kutekeleza kazi maalum. Inasaidia kupunguza kurudia rudia kwa misemo (query) ya SQL na kuimarisha utendaji wa database.
Faida za Stored Procedure:
-
Ufanisi: Huandikwa mara moja, inahifadhiwa kwenye server na inaweza kuitwa tena bila kuandika upya.
-
Usalama: Inaweza kupunguza kiwango cha moja kwa moja cha kuandika SQL kwa watumiaji wa mwisho.
-
Orodha ya Operesheni: Inasaidia katika operesheni ngumu kama batch processing.
2. Jinsi ya Kuunda Stored Procedure
Muundo wa Msingi:
DELIMITER //
CREATE PROCEDURE procedure_name (IN param1 DATATYPE, OUT param2 DATATYPE)
BEGIN
-- Maagizo ya SQL
SELECT column_name INTO param2 FROM table_name WHERE column_name = param1;
END //
DELIMITER ;
Mfano:
Tuseme tunataka kuunda Stored Procedure inayorejesha jumla ya mishahara kutoka kwenye jedwali la employees.
DELIMITER //
CREATE PROCEDURE GetTotalSalary(OUT total_salary DECIMAL(10, 2))
BEGIN
SELECT SUM(salary) INTO total_salary FROM employees;
END //
DELIMITER ;
Kuitumia Stored Procedure:
CALL GetTotalSalary(@salary);
SELECT @salary;
3. Function katika MySQL
Function ni kipengele cha MySQL ambacho hufanya kazi maalum na mara nyingi hurudisha thamani moja.
-
Hutumiwa mara nyingi ndani ya queries za SELECT, INSERT, UPDATE, na DELETE.
-
Ni muhimu kwa kazi za mahesabu au kuendesha data.
Muundo wa Msingi wa Function:
CREATE FUNCTION function_name (param1 DATATYPE)
RETURNS DATATYPE
DETERMINISTIC
BEGIN
-- Maagizo ya SQL
RETURN (value);
END;
Mfano:
CREATE FUNCTION GetDiscount(price DECIMAL(10, 2))
RETURNS DECIMAL(10, 2)
DETERMINISTIC
BEGIN
RETURN price * 0.1;
END;
Kutumia Function:
SELECT GetDiscount(500);
5. Mifano zaidi
Tunakwend akutengeneza table yenye jina la employee na field kama id, na, salary.
CREATE TABLE employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
salary DECIMAL(10, 2) NOT NULL
);
Kisha run code hizo hapo chini ili kuingiza data
INSERT INTO employees (name, salary) VALUES
('John Doe', 5000.00),
('Jane Smith', 6200.00),
('Michael Johnson', 4500.00),
('Emily Davis', 7300.00),
('David Wilson', 5400.00),
('Sarah Brown', 4800.00),
('Chris Miller', 6500.00),
('Anna Garcia', 5500.00),
('James Anderson', 5800.00),
('Laura Taylor', 7100.00);
Baada ya hapo sasa tutatengeneza procedure yetu kisha run code. Kwa k...
Umeionaje Makala hii.. ?
Share On:
👉1 Kitau cha Fiqh 👉2 Madrasa kiganjani 👉3 kitabu cha Simulizi 👉4 Kitabu cha Afya 👉5 web hosting 👉6 Sira ya Mtume Muhammad (s.a.w)
Post zinazofanana:
Database somo la 24: Transaction kwenye database
Katika somo hili utakwend akujifunza kuhusu nadharia ya transaction kwenye database
Soma Zaidi...SQL - MySQL somo la 8: Jinsi ya kuweka data (taarifa) kwenye database
Katika somo hili utajifunza jinsi ya kuweka data kwenye database, ku edit pamoja na kufuta kwa kutumia SQL na Myql interface
Soma Zaidi...SQL somo la 20: Jinsi ya kuunganisha table kwneye database
Katika somo hili utakwend akujifunz akuunganisha table zaidi ya moja kwneye database.
Soma Zaidi...SQL - MySQL somo la 11: Kudhibiti muonekano wa usomaji wa data kwenye database.
Katika somo hili utakwenda kujifunza jinsi ya kupangilia muonekano wa data kutoka kwenye database, kwa kudhibiti mpangilio wake.
Soma Zaidi...SQL - MySQL somo la 7: Jinsi ya kubadili jina table na column kwenye database
Katika somo hili utakwenda kujifunza jinsi ya kubadili jina la table na jina la column kwenye mysql database.
Soma Zaidi...SQL somo la 14: Jinsi ya kutafuta rank na position kwa kutumia sql
Katika somo hili utakwend akujifunza jinsi ya kutafuta rank ama position kwenye data base yako kwa kutumia sql. Pia utajifunza kuhusu table alias
Soma Zaidi...