Ok, this is only the second stored procedure I've written. I think you'll get the idea, I'm trying to close a credit line, and all invoices, charges, notes, etc with it. But I get a syntax error.
The goal is to CALL close_account_proc(398985994)
DELIMITER $$ CREATE PROCEDURE `cc`.`close_account_proc`(cid INT) @uid_usr := uid_usr FROM credit_acc WHERE type_acc = 'init' AND credit_used_acc = cid; UPDATE credit_acc SET status_acc = 'closed', void_date_acc = NOW() WHERE credit_used_acc = cid; UPDATE payment_acc SET status_acc = 'voided', void_date_acc = NOW() WHERE creditid_acc = cid; UPDATE sbal_sbl SET status_sbl = 'voided', void_date_sbl = NOW() WHERE credit_used_acc = cid; INSERT INTO notes_not SET uid_usr = @uid_usr, initials_not = 'SYS',status_not = 'complete', date_not = NOW(), text_not = 'Closed credit line '.cid; UPDATE invoices_inv SET status_inv = 'voided', void_date_inv = NOW() WHERE credit_used_acc = cid; BEGIN END$$ DELIMITER ;
So, anway, I get this error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@uid_usr := uid_usr from credit_acc where type_acc = 'init' and credit_used_acc ' at line 5.