Crear tablas campo logico??

Crear tablas campo logico??

Postby ACC69 » Fri Nov 21, 2014 9:51 pm

Hola mis estimados de antemano les envio cordial saludos.
Ya estoy creando mis tablas, pero me surgio una duda que no encontren en el foro y en los samples...como seria la expresion de crear campo logico como en dbf

{"AP_IVA" , "L" , 1 , 0 } ,; // 6 VALIDA SI APLICA CAPTURA IVA

Aqui como seria en TDolphin.

cQry := "CREATE TABLE IF NOT EXISTS CATALOGO ( "
cQry += "ID_CUENTA char(16) Default ' ' ,"
cQry += "DESCRIP char(65) Default ' ' ,"
cQry += "TIPONAT char(1) Default ' ' ,"
cQry += "NIVSUM int(1) UNSIGNED NOT NULL ,"
cQry += "IMPORTE decimal(12,2) Default '00.00' ,"
cQry += "GRUPOCTA int(1) UNSIGNED NOT NULL ,"
cQry += "AP_IVA" ,"

Saludos cordiales.

Atte: Adrian C. C.
acc69@hotmail.com
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Crear tablas campo logico??

Postby Kleyber » Fri Nov 21, 2014 10:41 pm

cQry += "AP_IVA tinyint default '0'" ,"
Kleyber Derick

FWH / xHb / xDevStudio / SQLLIB
User avatar
Kleyber
 
Posts: 581
Joined: Tue Oct 11, 2005 11:28 am
Location: São Luiz, Brasil

Re: Crear tablas campo logico??

Postby ACC69 » Fri Nov 21, 2014 11:01 pm

Kleyber wrote:cQry += "AP_IVA tinyint default '0'" ,"



Gracias Ing. Kleyber muy amable.

Saludos y buen fin de semana.

Atte: Adrian C. C.
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Crear tablas campo logico??

Postby joseluisysturiz » Sat Nov 22, 2014 4:21 am

ACC, en MySql no existen campos logicos, lo que muchos hacemos es crear un campo INT de un caracter para usar 0 y 1, en mi caso 0 es.f. y 1 es .t., cuando leo el campo hago una conversion con un funcion pasando el valor de la VAR contenedora a valor logico, lo uso mas que todo para los CHECK BOX y cuando voy a grabar a la tabla vuelvo hacer conversion pero esta vez de logico a INT, sea 0 o 1. Espero haberte ayudado con la explicacion, saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Crear tablas campo logico??

Postby Armando » Sat Nov 22, 2014 5:50 pm

Amigos:

Me permito diferir, en MySql sí existen campos que podríamos llamar lógicos:

Code: Select all  Expand view

Los defino así:

"CAR_CAN BIT    NOT NULL    COMMENT 'Cancelada?'," +;

Aquí el uso:

"WHERE " +;
    "YEAR(carcxp.car_fde) = '" + STR(nAmo,4,0) + "' " + ;
"AND " +;
    "! carcxp.car_can " +;
 


Yo sí los llamaría campos lógicos!
Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3179
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Crear tablas campo logico??

Postby joseluisysturiz » Sat Nov 22, 2014 6:32 pm

Last edited by joseluisysturiz on Sat Nov 22, 2014 6:46 pm, edited 1 time in total.
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Crear tablas campo logico??

Postby joseluisysturiz » Sat Nov 22, 2014 6:41 pm

Armando wrote:Amigos:

Me permito diferir, en MySql sí existen campos que podríamos llamar lógicos:

Code: Select all  Expand view

Los defino así:

"CAR_CAN BIT    NOT NULL    COMMENT 'Cancelada?'," +;

Aquí el uso:

"WHERE " +;
    "YEAR(carcxp.car_fde) = '" + STR(nAmo,4,0) + "' " + ;
"AND " +;
    "! carcxp.car_can " +;
 


Yo sí los llamaría campos lógicos!
Saludos



Para mi eso no es un tipo de campo, sino el valor contenido en el campo, que no es lo mismo, NIL o NULL es hasta diferente de vacio. No es lo mismo, me quede sin NADA, a NUNCA he tenido...saludos... :shock:

http://es.wikipedia.org/wiki/Null

http://dev.mysql.com/doc/refman/5.1/en/data-types.html
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Crear tablas campo logico??

Postby Armando » Sat Nov 22, 2014 9:25 pm

Amigos:

Tal vez solo sea cuestión de semántica.

Desde el punto de vista purista los campos BIT son de tipo numérico con valor de 0 (False) y 1 (True),
y me pregunto.... ¿cual es el contenido de los campos lógicos en una DBF?, pues 0 y 1.

Los llamo lógicos porque los podemos manejar como los lógicos de una DBF

IF CampoLogico
ELSE
ENDIF

oRs:Fields("CampoLogico"):Value := (.T.)/(.F.)

Que está más apegado a como se manejan los lógicos en una DBF en lugar de usar

IF CampoLogico > 0
ELSE
ENDIF

Pero bien dice José Luis, en gustos se rompen géneros... Y pues ahí esta otra alternativa.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3179
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Crear tablas campo logico??

Postby ACC69 » Sat Nov 22, 2014 10:18 pm

Armando wrote:Amigos:

Tal vez solo sea cuestión de semántica.

Desde el punto de vista purista los campos BIT son de tipo numérico con valor de 0 (False) y 1 (True),
y me pregunto.... ¿cual es el contenido de los campos lógicos en una DBF?, pues 0 y 1.

Los llamo lógicos porque los podemos manejar como los lógicos de una DBF

IF CampoLogico
ELSE
ENDIF

oRs:Fields("CampoLogico"):Value := (.T.)/(.F.)

Que está más apegado a como se manejan los lógicos en una DBF en lugar de usar

IF CampoLogico > 0
ELSE
ENDIF

Pero bien dice José Luis, en gustos se rompen géneros... Y pues ahí esta otra alternativa.

Saludos



Gracias y muy amable a los que me contestaron, con razon, no le hallaba el valor de true o false , ni al editar directamente en workbench, me dejaba ya que me marcaba error y solo es valido 1 y 2 ó 0 y 1 o cualquier numero, cual fuere sea el caso.

Y ahora se me viene a la mente que en visual foxpro, si me dejaba hacer de todo, porque recorde, que aun manejaba dbfs con sql y eran tablas de true y false con campos logico, excepto tablas desde origen de slq, y ya me voy topando con algunas cosillas que me trunco, pero ahi la llevo tranquilo paso a paso checando ejemplos en el foro, con mi primer tabla.

Cualquier duda que tenga, espero me puedan ayudar, los que migraron a MySQL

Gracias a todos, les envio cordial saludos.

Atte: Adrian C. C.
acc69@hotmail.com
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Re: Crear tablas campo logico??

Postby Biel EA6DD » Thu Dec 11, 2014 7:28 am

En MySql si que existe un campo para booleanos, pero de momento no está implementada funcionalidad alguna y es equivalente a un tinyInt(1), pero en cualquier caso creo que es buena idea definir los campos como boolean, por si en un futuro MySql implementa algún tipo de funcionalidad para este tipo de campo.

Bool, Boolean: These types are synonyms for TINYINT(1). A value of zero is considered false. Non-zero values are considered true.

MySQL also states that:

We intend to implement full boolean type handling, in accordance with standard SQL, in a future MySQL release.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 47 guests