Jump to content


Photo

Cual es la diferencia entre bindParam y bindValue?


  • Please log in to reply
2 replies to this topic

#1 frod890

frod890

    Newbie

  • Miembros
  • Pip
  • 4 posts

Posted 16 December 2013 - 09:24 AM

Cual es la diferencia entre bindParam y bindValue?,,
Alguien me puede decir en que caso debo usar uno u  otro, en que afecta el performance de mi aplicación... cual es mas seguro? etc...
Gracias...
  • 0

#2 porfi.dev

porfi.dev

    Advanced Member

  • Miembros
  • PipPipPip
  • 183 posts
  • LocationMy House @ México

Posted 16 December 2013 - 12:28 PM

Los dos son iguales en cuanto a seguridad y todo lo que mencionas.

la unica diferencias es que:

BindValue: Una vez que le asignas el valor de una variable, este se queda permanente aun cuando le cambies el valor a la variable.

BindParam:  Aqui solo asignas la variable, sin embargo si la variable cambia al momento de ejecutar la consulta, este valor se actualiza.


Aqui unos ejemplos tomados de http://stackoverflow...e-and-bindparam .



delphi
  1. $stmt = $db->prepare('SELECT * FROM `table` WHERE foo = :foo');
  2.  
  3. $foo = 'foo';
  4. $stmt->bindValue(':foo', $foo);
  5. $foo = 'bar';
  6.  
  7. $stmt->execute();
  8.  
  9. // lanza SELECT * FROM `table` WHERE foo = 'foo';





delphi
  1. $stmt = $db->prepare('SELECT * FROM `table` WHERE foo = :foo');
  2.  
  3. $foo = 'foo';
  4. $stmt->bindParam(':foo', $foo);
  5. $foo = 'bar';
  6.  
  7. $stmt->execute()
  8.  
  9. // lanza SELECT * FROM `table` WHERE foo = 'bar';


  • 0

#3 frod890

frod890

    Newbie

  • Miembros
  • Pip
  • 4 posts

Posted 16 December 2013 - 02:16 PM

Comprendido, muchas gracias, realmente es muy ligero la diferencia ente uno y otro,,, solo en casos especiales se tendría que decidir por uno... (y)
  • 0




IP.Board spam blocked by CleanTalk.