12345678910111213141516171819202122232425262728293031323334353637383940 |
- DELIMITER $
- DROP FUNCTION IF EXISTS Decrypt_char $
- CREATE FUNCTION Decrypt_char(Varstring varchar(255)) RETURNS varchar(255)
- BEGIN
- DECLARE v_length INT DEFAULT 0;
- DECLARE v_Tmp varchar(255) default '';
- DECLARE v_Tmp2 char(1) default '';
- set v_length=CHAR_LENGTH(Varstring);
- WHILE v_length > 0 DO
- set v_Tmp2 = mid(Varstring,v_length,1);
- IF (ORD(v_Tmp2)> 130) THEN
- set v_Tmp = concat(v_Tmp, char(ORD(CONVERT(v_Tmp2 USING ucs2)) -2 USING ucs2));
- ELSE
- set v_Tmp = concat(v_Tmp,v_Tmp2);
- END IF;
- SET v_length = v_length - 1;
- END WHILE;
- RETURN REVERSE(v_Tmp);
- END $
- DELIMITER $
- DROP FUNCTION IF EXISTS Encrypt_char $
- CREATE FUNCTION Encrypt_char(Varstring varchar(255)) RETURNS varchar(255)
- BEGIN
- DECLARE v_length INT DEFAULT 0;
- DECLARE v_Tmp varchar(255) default '';
- DECLARE v_Tmp2 char(1) default '';
- set v_length=CHAR_LENGTH(Varstring);
- WHILE v_length > 0 DO
- set v_Tmp2 = mid(Varstring,v_length,1);
- IF (ORD(v_Tmp2)> 128) THEN
- set v_Tmp = concat(v_Tmp, char(ORD(CONVERT(v_Tmp2 USING ucs2)) +2 USING ucs2));
- ELSE
- set v_Tmp = concat(v_Tmp,v_Tmp2);
- END IF;
- SET v_length = v_length - 1;
- END WHILE;
- RETURN REVERSE(v_Tmp);
- END $
|