Thursday, 14 May 2015

Creating store procedure Mysql Insert

Showing you some examples of creating store procedure in mysql.
1. "At The Rate" sign used for local variable declare.
2. For calling a store procedure use function below. i am using Codeigniter.
  1. public function AddBooking(){
  2. $sql="call usp_AddBooking()";
  3. $parameters=array();
  4. $query = $this->db->query($sql,$parameters);
  5. return $query->result();
  6. }
  7. DROP PROCEDURE IF EXISTS `usp_AddBooking` $$
  8. CREATE PROCEDURE `usp_AddBooking`(
  9. IN iVendorId INT,
  10. IN iCustomerId INT,
  11. IN iServiceId INT,
  12. IN dServiceBookingTime DATETIME,
  13. IN dArrivalTime DATETIME
  14. )
  15. BEGIN
  16. DECLARE iBookingId INT default 0;
  17. BEGIN
  18. -- ERROR
  19. set ErrorCode = -999;
  20. rollback;
  21. END;
  22. DECLARE exit handler for sqlwarning
  23. BEGIN
  24. -- WARNING
  25. set ErrorCode = -888;
  26. rollback;
  27. END;
  28. START TRANSACTION;
  29. INSERT INTO skin_booking
  30. (iVendorId
  31. ,iCustomerId
  32. ,iServiceId
  33. ,dServiceBookingTime
  34. ,dArrivalTime
  35. ,eStatus
  36. ,dCreatedDate
  37. ,iBookingId
  38. )
  39. VALUES
  40. (iVendorId
  41. ,iCustomerId
  42. ,iServiceId
  43. ,dServiceBookingTime
  44. ,dArrivalTime
  45. ,'1'
  46. ,NOW()
  47. ,iBookingId
  48. );
  49. SET @iBookingId = LAST_INSERT_ID();
  50. SELECT @iBookingId as BookingId;
  51. COMMIT;
  52. END$$

No comments: