Re: [GENERAL] Checkboxes on MSAccess and PostgreSQL

1999-02-24 Thread Valerio Santinelli

Jose' Soares wrote:

 Valerio Santinelli wrote:
 
  First of all.. thanks to everybody for helping me out witht the
  "sequence" stuff. :)
 
  I've got another questions for you dudes.  When using a CheckBox in a
  Form written in MSAccess that's related to a table in a
  PostgreSQL database, if I simply turn its status from ON to OFF it works
  fine, while if i'm doing the opposite it won't work.
 
  I noticed that when exporting the table from MSAccess to PostgreSQL the
  "yes/no" fields all became char(1) and not boolean.. maybe this could be
  the problem.
 
  I also noticed from the logs that when updating the status from ON to
  OFF the UPDATE goes out with something like field_name='0'
  I'm not sure it should use the "'" since it's more like a numerical, no
  ?
 
  Thanks again,
 
  Valerio Santinelli
  [EMAIL PROTECTED]

 You have to uncheck "Bools as Char" on Advanced options Driver on ODBC
 Data Source Administrator
 and then you have to create an operator for bool=int4 like this:

 /* M$Access tratta il valore booleano come un intero 0=false o -1=true
mentre invece PostgreSQL lo tratta come una stringa:
'true','t','1','y','yes','false','f','0','n','no'
Questo script crea l'operatore = e implicitamente  per bool e int4
per compatibilita' con M$Access.
 */
 drop operator = (bool,int4);
 drop function MsAccessBool(bool,int4);

 create function MsAccessBool(bool,int4)
   returns bool
   as ''
   language 'internal';

 create operator = (
 leftarg=bool,
 rightarg=int4,
 procedure=MsAccessBool,
 commutator='=',
 negator='',
 restrict=eqsel,
 join=eqjoinsel
 );

Some time ago I got this message and I tried to make booleans work with my
database, but there's been no way to do that. First of all, during the
"DROP MsAccessBool" my PostgreSQL database engine reports that the function
can't be dropped because it's an internal (built-in).
Second, it seems to replace it by creating the function (i don't know how it
could if the function already exists..) but then again when I'm updating a
record in a table with booleans it simply doesn't let me do that. I'm
desperately seeking help now.. I don't really know how to solve this problem.

Thanks in advance

Valerio Santinelli
[EMAIL PROTECTED]




RE: [GENERAL] Checkboxes on MSAccess and PostgreSQL

1999-02-24 Thread Michael Davis

I wrote a function that takes a boolean parameter and returns int2.

-Original Message-
From:   Valerio Santinelli [SMTP:[EMAIL PROTECTED]]
Sent:   Wednesday, February 24, 1999 1:10 PM
To: Michael Davis
Cc: [EMAIL PROTECTED]
Subject:Re: [GENERAL] Checkboxes on MSAccess and PostgreSQL

That's the same thing I did today to get rid of the boolean problem.
Now I've
got another one ;)
I want to use my data contained in the table filled with boolean
stuff and I'd
like to convert all the booleans to int2. I know there's a way to do
that by
doing something like:

INSERT INTO mynewtable SELECT field1, field2, (booleanfield='t'),
field3,...
FROM myoldtable;

but "(booleanfield='t')" gives another boolean value. I think I
should typecast
it into an int2 but I don't know how to do that since there isn't a
function
liek a bool_to_int2.
Any ideas ?

Michael Davis wrote:

 I defined my Access boolean fields as int2 in Postgres.  This, in
 combination with removing the "Bools as Char" flag in the ODBC
driver
 appears to work.  However, I have not been able to much testing.

 -Original Message-
 From:   Valerio Santinelli [SMTP:[EMAIL PROTECTED]]
 Sent:   Wednesday, February 24, 1999 4:25 AM
 To: [EMAIL PROTECTED]
 Cc: [EMAIL PROTECTED];
 [EMAIL PROTECTED]
 Subject:    Re: [GENERAL] Checkboxes on MSAccess and
PostgreSQL

 Jose' Soares wrote:

  Valerio Santinelli wrote:
  
   First of all.. thanks to everybody for helping me out
witht the
   "sequence" stuff. :)
  
   I've got another questions for you dudes.  When using
a CheckBox
 in a
   Form written in MSAccess that's related to a table in
a
   PostgreSQL database, if I simply turn its status from
ON to OFF
 it works
   fine, while if i'm doing the opposite it won't work.
  
   I noticed that when exporting the table from MSAccess
to
 PostgreSQL the
   "yes/no" fields all became char(1) and not boolean..
maybe this
 could be
   the problem.
  
   I also noticed from the logs that when updating the
status from
 ON to
   OFF the UPDATE goes out with something like
field_name='0'
   I'm not sure it should use the "'" since it's more
like a
 numerical, no
   ?
  
   Thanks again,
  
   Valerio Santinelli
   [EMAIL PROTECTED]
 
  You have to uncheck "Bools as Char" on Advanced options
Driver on
 ODBC
  Data Source Administrator
  and then you have to create an operator for bool=int4
like this:
 
  /* M$Access tratta il valore booleano come un intero
0=false o
 -1=true
 mentre invece PostgreSQL lo tratta come una stringa:
 'true','t','1','y','yes','false','f','0','n','no'
 Questo script crea l'operatore = e implicitamente 
per bool e
 int4
 per compatibilita' con M$Access.
  */
  drop operator = (bool,int4);
  drop function MsAccessBool(bool,int4);
 
  create function MsAccessBool(bool,int4)
returns bool
as ''
language 'internal';
 
  create operator = (
  leftarg=bool,
  rightarg=int4,
  procedure=MsAccessBool,
  commutator='=',
  negator='',
  restrict=eqsel,
  join=eqjoinsel
  );

 Some time ago I got this message and I tried to make
booleans work
 with my
 database, but there's been no way to do that. First of
all, during
 the
 "DROP MsAccessBool" my PostgreSQL database engine reports
that the
 function
 can't be dropped because it's an internal (built-in).
 Second, it seems to replace it by creating the function (i
don't
 know how it
 could if the function already exists..) but then again
when I'm
 updating a
 record i

[GENERAL] Checkboxes on MSAccess and PostgreSQL

1999-01-18 Thread Valerio Santinelli

First of all.. thanks to everybody for helping me out witht the
"sequence" stuff. :)

I've got another questions for you dudes.  When using a CheckBox in a
Form written in MSAccess that's related to a table in a
PostgreSQL database, if I simply turn its status from ON to OFF it works
fine, while if i'm doing the opposite it won't work.

I noticed that when exporting the table from MSAccess to PostgreSQL the
"yes/no" fields all became char(1) and not boolean.. maybe this could be
the problem.

I also noticed from the logs that when updating the status from ON to
OFF the UPDATE goes out with something like field_name='0'
I'm not sure it should use the "'" since it's more like a numerical, no
?

Thanks again,

Valerio Santinelli
[EMAIL PROTECTED]