2010-12-05 14 views
0

Je veux exécuter la requête 'SET a = b' en utilisant Active Record dans Codeigniter. J'utilise MySQL. J'ai essayé avecExécuter la requête 'SET a = b'

$this->db->set('a', 'b', FALSE); 

Mais il exécute

SET a = NULL 
+2

Etes-vous en train d'essayer de mettre à jour ou insérer une ligne? Peut-être montrer tout le code appartenant à cette déclaration, afin que nous puissions étudier ce qui se passe exactement. – Joost

+0

En effet; voyons le code, et peut-être pourriez-vous nous dire si 'a' et 'b' sont des noms de colonne, et si ces colonnes sont dans la même table, etc. - une idée de l'opération que vous voulez effectuer ici, et sur quels objets de base de données, serait utile! –

Répondre

0

Je pense que vous pouvez faire:

$this->db->query('SET a = b')

Référence: http://codeigniter.com/user_guide/database/queries.html

  • Chri stian
+0

Ce n'est pas une question, bien sûr. Et il ne fournit pas le niveau d'abstraction, ce que fait Active Record. – Joost

+0

C'est une requête mais elle ne retourne rien. Vous pouvez utiliser la méthode query() pour effectuer des requêtes de type 'write'. Si l'ORM n'a pas le moyen d'effectuer des requêtes SET, c'est une solution viable. En outre, la requête SET ne renvoie rien. Référence: http://dev.mysql.com/doc/refman/5.1/fr/set-option.html –

+0

Merci, mon erreur alors. – Joost