[Obm] MySQLismes et OBM 2.1.0

Cyril Chaboisseau cyril.chaboisseau at obs.coe.int
Tue Dec 11 01:11:22 CET 2007


...encore une bizarrerie :

si je compare les scripts permettant de créer la base entre MySQL et
PostgreSQL, je note une différence notable sur au moins la table Deal :

scripts/2.1/create_obmdb_2.1.mysql.sql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

--
-- Table structure for table 'Deal'
--
CREATE TABLE Deal (
  deal_id                   int(8) auto_increment,
  deal_domain_id            int(8) default 0,
  deal_timeupdate           timestamp(14),
  deal_timecreate           timestamp(14),
  deal_userupdate           int(8),
  deal_usercreate           int(8),
  deal_number               varchar(32),
  deal_label                varchar(128),
  deal_datebegin            date,
  deal_parentdeal_id        int(8),
  deal_type_id              int(8),
  deal_region_id            int(8) DEFAULT 0 NOT NULL,
  deal_tasktype_id          int(8),
  deal_company_id           int(8) DEFAULT 0 NOT NULL,
  deal_contact1_id          int(8),
  deal_contact2_id          int(8),
  deal_marketingmanager_id  int(8),
  deal_technicalmanager_id  int(8),
  deal_source_id            int(8) DEFAULT 0 NOT NULL,
  deal_source               varchar(64),
  deal_dateproposal         date,
  deal_dateexpected         date,
  deal_datealarm            date,
  deal_dateend              date,
  deal_amount               decimal(12,2),
  deal_margin               decimal(12,2),
  deal_commission           decimal(5,2) DEFAULT 0,
  deal_hitrate              int(3) DEFAULT 0,
  deal_status_id            int(2),
  deal_archive              char(1) DEFAULT '0',
  deal_todo                 varchar(128),
  deal_privacy              int(2) NOT NULL DEFAULT 0,
  deal_comment              text,
  PRIMARY KEY (deal_id)
);


--%<-----%<-----%<-----%<-----%<-----%<-----%<-----%<-----%<-----%<---

scripts/2.1/create_obmdb_2.1.pgsql.sql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

--
-- Table structure for table 'Deal'
--
CREATE TABLE Deal (
  deal_id                   serial,
  deal_domain_id            integer default 0,
  deal_timeupdate           timestamp,
  deal_timecreate           timestamp,
  deal_userupdate           integer,
  deal_usercreate           integer,
  deal_number               varchar(32),
  deal_label                varchar(128),
  deal_datebegin            date,
  deal_parentdeal_id        integer,
  deal_type_id              integer,
  deal_region_id            integer DEFAULT 0 NOT NULL,
  deal_tasktype_id          integer,
  deal_company_id           integer DEFAULT 0 NOT NULL,
  deal_contact1_id          integer,
  deal_contact2_id          integer,
  deal_marketingmanager_id  integer,
  deal_technicalmanager_id  integer,
  deal_dateproposal         date,
  deal_dateexpected         date,
  deal_datealarm            date,
  deal_dateend              date,
  deal_amount               decimal(12,2),
  deal_margin               decimal(12,2),
  deal_commission           decimal(4,2) DEFAULT 0,
  deal_hitrate              integer DEFAULT 0,
  deal_status_id            integer,
  deal_archive              char(1) DEFAULT '0',
  deal_todo                 varchar(128),
  deal_privacy              integer DEFAULT 0,
  deal_comment              text,
  PRIMARY KEY (deal_id)
);


et donc l'absence des colonnes deal_source et deal_source_id fait que la
rechercher ou création d'un deal ne marche pas lorsque l'on utilise une
base PostgreSQL

...fâcheux !

pour s'en sortir :

ALTER TABLE deal ADD COLUMN deal_source_id integer NOT NULL default 0;
ALTER TABLE deal ADD COLUMN deal_source varchar(64);


je n'ai bien sûr pas pu comparer toutes les autres tables


question subsidiaire :

j'arrive à faire tourner OBM avec une base dont l'encodage est UTF-8
mais si je mets aussi apache en UTF ça donne des caractères mals encodés
lorsque je suis en français

ex: Derni�res visites

y a t-il un moyen de le corriger ou bien c'est dans une future version
(comme indiqué dans la doc d'ailleurs que j'ai lu !)

merci

-- 
Cyril Chaboisseau - tel +33 3 88 14 44 09 / fax +33 3 88 14 44 19


More information about the Obm mailing list