Crear tablas campo logico??

Post Reply
ACC69
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm
Contact:

Crear tablas campo logico??

Post by ACC69 »

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
User avatar
Kleyber
Posts: 581
Joined: Tue Oct 11, 2005 11:28 am
Location: São Luiz, Brasil

Re: Crear tablas campo logico??

Post by Kleyber »

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

FWH / xHb / xDevStudio / SQLLIB
ACC69
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm
Contact:

Re: Crear tablas campo logico??

Post by ACC69 »

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



Gracias Ing. Kleyber muy amable.

Saludos y buen fin de semana.

Atte: Adrian C. C.
User avatar
joseluisysturiz
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Re: Crear tablas campo logico??

Post by joseluisysturiz »

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
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Crear tablas campo logico??

Post by Armando »

Amigos:

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

Code: Select all | Expand


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
joseluisysturiz
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Re: Crear tablas campo logico??

Post by joseluisysturiz »

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
Contact:

Re: Crear tablas campo logico??

Post by joseluisysturiz »

Armando wrote:Amigos:

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

Code: Select all | Expand


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
Armando
Posts: 3271
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 2 times
Contact:

Re: Crear tablas campo logico??

Post by Armando »

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
ACC69
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm
Contact:

Re: Crear tablas campo logico??

Post by ACC69 »

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
User avatar
Biel EA6DD
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca
Contact:

Re: Crear tablas campo logico??

Post by Biel EA6DD »

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/
Post Reply