tengo el sgte. codigo:

'Microsoft ActiveX DataObjects 2.8 Library
Dim CN As ADODB.Connection, RS1 As ADODB.Recordset, RS2 As ADODB.Recordset

Private Sub Command1_Click()
Set RS1 = Nothing
Set RS1 = New ADODB.Recordset
RS1.CursorLocation = adUseClient
RS1.CursorType = adOpenForwardOnly
RS1.LockType = adLockReadOnly

Set RS1 = CN.Execute("call f_edad(@edad);")'aqui ya me hizo el calculo


Set RS2 = Nothing
Set RS2 = New ADODB.Recordset
RS2.CursorLocation = adUseClient
RS2.CursorType = adOpenStatic
RS2.LockType = adLockReadOnly

Set RS2 = CN.Execute("select @edad as edad")'aqui supuestamente debe darme el resultado

MsgBox Val(RS2!edad)
End Sub

Private Sub Form_Load()
Set CN = Nothing
Set CN = New ADODB.Connection
CN.CursorLocation = adUseClient
CN.CommandTimeout = 120

CN.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=johnny; DATABASE=dbdentalsoft; " & _
"UID=root; PWD=mb3127; OPTION=16427"

CN.Open
End Sub

este programita ejecuta el sgte. procedimiento almacenado en MySQL 5.0.77:

DELIMITER $$
DROP PROCEDURE IF EXISTS f_edad $$

CREATE PROCEDURE f_edad(OUT result SMALLINT)
BEGIN
SET result = 19;
END $$
DELIMITER ;

la duda es esta: cuando ese codigo lo ejecuto en mi pc accediendo a una base de datos local y remota, la resultante si es mayor a 9, me sale 0; si la resultante es menor o igual 9, si me sale el valor q corresponde.

pero, cuando se mismo codigo lo ejecuto en otra pc, no importa el valor q tenga la resultante si me sale el valor q corresponde, ya sea localmente o remotamente.

cuando instale en mi pc el mysql no le di ninguna configuracion especial, solo next, next, next... cual es el problema ??
alguna sugerencia... plz...