Mikmak MySQL DML UnitBase
Home

Mikmak MySQL DML UnitBase

Mikmak MySQL DML UnitBase

CRUD stored procedures voor de UnitBase tabel. De afspraak is dat de namen voor de stored procedurs beginnen met de naam van de tabel gevolgd door de naam van de CRUD handeling. De naam wordt in pascalnotatie geschreven.

Probleem

We moeten de gegevens van een basiseenheid kunnen inserten, updaten, deleten en selecteren. De selectie moet kunnen gebeuren op basis van de naam en van de code. Voor het maken van de stored procedures baseren we ons op het Mikmak logisch model.

Design

Naam Beschrijving
UnitBaseInsert bevat 1 OUTPUT parameter om de nieuw Id te retourneren naar het calling programma
UnitBaseUpdate deze stored procedure updatet alle kolommen van de rij met de opgegeven Id
UnitBaseSelectOne lees 1 rij in uit de tabel op basis van de Id, neem alle kolommen mee voor het detail venster
UnitBaseSelectAll lees alle rijen in uit de tabel maar alleen de kolommen die we in de lijst willen laten zien
UnitBaseSelectByCode lees 1 rij in uit de tabel op basis van de Code maar alleen de kolommen die we in de lijst willen laten zien
UnitBaseSelectByName ees 1 rij in uit de tabel op basis van de Name maar alleen de kolommen die we in de lijst willen laten zien

Oplossing

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML Insert Stored Procedure for UnitBase 
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseInsert;
DELIMITER //
CREATE PROCEDURE `UnitBaseInsert`
(
	IN pName NVARCHAR (255) ,
	IN pDescription NVARCHAR (1024) ,
	IN pShippingCostMultiplier FLOAT ,
	IN pCode NVARCHAR (2) ,
	OUT pId INT 
)
BEGIN
INSERT INTO `UnitBase`
	(
		`UnitBase`.`Name`,
		`UnitBase`.`Description`,
		`UnitBase`.`ShippingCostMultiplier`,
		`UnitBase`.`Code`
	)
	VALUES
	(
		pName,
		pDescription,
		pShippingCostMultiplier,
		pCode
	);
	SELECT LAST_INSERT_ID() INTO pId;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML Update Stored Procedure for UnitBase
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseUpdate;
DELIMITER //
CREATE PROCEDURE `UnitBaseUpdate`
(
	pName NVARCHAR (255) ,
	pDescription NVARCHAR (1024) ,
	pShippingCostMultiplier FLOAT ,
	pCode NVARCHAR (2) ,
	pId INT 
)
BEGIN
UPDATE `UnitBase`
	SET
		`Name` = pName,
		`Description` = pDescription,
		`ShippingCostMultiplier` = pShippingCostMultiplier,
		`Code` = pCode
	WHERE `UnitBase`.`Id` = pId;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML Delete Stored Procedure for UnitBase 
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseDelete;
DELIMITER //
CREATE PROCEDURE `UnitBaseDelete`
(
	 pId INT 
)
BEGIN
DELETE FROM `UnitBase`
	WHERE `UnitBase`.`Id` = pId;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML SelectOne Stored Procedure for UnitBase 
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseSelectOne;
DELIMITER //
CREATE PROCEDURE `UnitBaseSelectOne`
(
	 pId INT 
)
BEGIN
SELECT * FROM `UnitBase`
	WHERE `UnitBase`.`Id` = pId;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML SelectAll Stored Procedure for table UnitBase 
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseSelectAll;
DELIMITER //
CREATE PROCEDURE `UnitBaseSelectAll`
(
)
BEGIN
SELECT `UnitBase`.`Name`,
	`UnitBase`.`ShippingCostMultiplier`,
	`UnitBase`.`Code`,
	`UnitBase`.`Id`
	FROM `UnitBase`
	ORDER BY `Name`;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML SelectByName Stored Procedure for table UnitBase
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseSelectByName;
DELIMITER //
CREATE PROCEDURE `UnitBaseSelectByName`
(
	 pName NVARCHAR (255) 
)
BEGIN
SELECT `UnitBase`.`Name`,
	`UnitBase`.`ShippingCostMultiplier`,
	`UnitBase`.`Code`,
	`UnitBase`.`Id`

	FROM `UnitBase`
	WHERE `UnitBase`.`Name` = pName
	ORDER BY `UnitBase`.`Name`;
END //
DELIMITER ;

-- modernways.be
-- created by an orm apart
-- Entreprise de modes et de manières modernes
-- MySql DML
-- Created : Wednesday 6th of January 2016 08:10:41 PM
-- DML SelectByCode Stored Procedure for table UnitBase
-- 
USE Webwinkel;
DROP PROCEDURE IF EXISTS UnitBaseSelectByCode;
DELIMITER //
CREATE PROCEDURE `UnitBaseSelectByCode`
(
	 pCode NVARCHAR (2) 
)
BEGIN
SELECT `UnitBase`.`Name`,
	`UnitBase`.`ShippingCostMultiplier`,
	`UnitBase`.`Code`,
	`UnitBase`.`Id`

	FROM `UnitBase`
	WHERE `UnitBase`.`Code` = pCode
	ORDER BY `UnitBase`.`Code`;
END //
DELIMITER ;

JI
2016-01-11 14:34:56