dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Install postgres sur sarge


From: Eldy
Subject: Re: [Dolibarr-dev] Install postgres sur sarge
Date: Mon, 07 Mar 2005 00:33:31 +0100
User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)

Francois Tigeot wrote:

On Sun, Mar 06, 2005 at 06:08:43PM +0100, Eldy wrote:
Peux-tu essayer de passer le script   pgsql/tables/mysql-function.sql.
Il est possible que son lancement ne soit pas inclus dans la procédure d'install et du coup il te manque les fonctions unix_timestamp qui provoquent une erreur de syntax dans ta requete.

En fait, il y a deux problèmes:

- la requête est invalide. J'ai corrigé dans le patch attaché.

Le problème de cette correction est que l'on perd le caractère "forcé" du nom du champ de réponse. Ainsi le $this->db->pdate("u.tms") est forcé au nom "datem", ce qui permet de récupérer le champ par $obj->datem. Si on enlève le nommage du champ, le code php qui suit la requête ne fonctionne plus. Par contre il est possible d'utiliser une autre syntax qui serait compatible entre pgsql et mysql:
Peux-tu tester à la place avec le patch suivant:

- $sql .= ", ".$this->db->pdate("u.datec")." datec, ".$this->db->pdate("u.tms")." datem"; + $sql .= ", ".$this->db->pdate("u.datec")." as datec, ".$this->db->pdate("u.tms")." as datem";


- Une fois la requête changée, j'ai l'erreur suivante:

        ERROR: function unix_timestamp(timestamp without time zone) does not 
exist
        HINT: No function matches the given name and argument types. You may 
need
        to add explicit type casts.

qui correspond bien à la fonction manquante. Une fois mysql-function.sql
rajouté dans la base, tout fonctionne correctement.

------------------------------------------------------------------------

diff -u -r1.56 user.class.php
--- htdocs/user.class.php       6 Mar 2005 17:16:54 -0000       1.56
+++ htdocs/user.class.php       6 Mar 2005 20:59:21 -0000
@@ -94,7 +94,7 @@
    {
$sql = "SELECT u.rowid, u.name, u.firstname, u.email, u.code, u.admin, u.login, u.pass, u.webcal_login, u.note";
-      $sql .= ", ".$this->db->pdate("u.datec")." datec, 
".$this->db->pdate("u.tms")." datem";
+      $sql .= ", ".$this->db->pdate("u.datec").", ".$this->db->pdate("u.tms");
      $sql .= " FROM ".MAIN_DB_PREFIX."user as u";
      if ($this->id)
        {
------------------------------------------------------------------------

_______________________________________________
Dolibarr-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev


--
Laurent Destailleur.
---------------------------------------------------------------
EMail: address@hidden
AWStats : http://awstats.sourceforge.net
AWBot : http://awbot.sourceforge.net
CVSChangeLogBuilder : http://cvschangelogb.sourceforge.net






reply via email to

[Prev in Thread] Current Thread [Next in Thread]