Hi,

I have this SP:

CREATE DBPROC insert_error_recipient(
  IN a_event_id   FIXED(12),
  IN a_recipient  VARCHAR(64) )
AS
VAR
  l_userid     FIXED(9);
BEGIN
  CALL get_or_create_user_id( :l_userid, NULL, SUBSTR(:a_recipient,
1, 64), NULL );
  INSERT INTO cr_admin.ag_outbound_error_recipients ( eventid,
indexid ) VALUES ( :a_event_id, :l_userid );
END;

Now, since SUBSTR will always extend the string to 64 characters, I
imagine this variant might be more efficient:

CREATE DBPROC insert_error_recipient(
  IN a_event_id   FIXED(12),
  IN a_recipient  VARCHAR(64) )
AS
VAR
  l_userid     FIXED(9);
BEGIN
  IF LENGTH(:a_recipient) > 64 THEN
    CALL get_or_create_user_id( :l_userid, NULL, SUBSTR(:a_recipient,
1, 64), NULL );
  ELSE
    CALL get_or_create_user_id( :l_userid, NULL, :a_recipient, NULL );
END;
  INSERT INTO cr_admin.ag_outbound_error_recipients ( eventid,
indexid ) VALUES ( :a_event_id, :l_userid );
END;

What do the insiders say?

Kind regards

robert

--
Have a look: http://www.flickr.com/photos/fussel-foto/

--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to