Crear tablas campo logico??

Post Reply
ACC69
Posts: 619
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: 619
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: 2024
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: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
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

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

Re: Crear tablas campo logico??

Post by joseluisysturiz »

No lo digo yo...saludos... :shock:

http://www.programacionweb.net/foros/me ... s-logicos/

https://groups.google.com/forum/#!topic ... B-opSW1n-Y

http://www.clubdelphi.com/foros/archive ... 18982.html

http://microsoft.public.es.vfoxpro.nark ... s-en-mysql

http://www.forosdelweb.com/f21/campos-l ... ql-248914/

http://www.lawebdelprogramador.com/foro ... MySQL.html

http://www.desarrolloweb.com/articulos/1054.php

asi que creo en resumen, con un campo de tipo INT de 1 valor, cero(0) y uno(1), se puede manejar mas facilmente, o si quieres inventar mas, uno tipo CHAR y le pones F o T...y listo, entre gusto y colores...saludos... :shock:
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: 2024
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

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: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
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 _ BIT son de tipo numérico con valor de 0 (False) y 1 (True),
y me pregunto.... ¿cual es el contenido de _ 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: 619
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 _ BIT son de tipo numérico con valor de 0 (False) y 1 (True),
y me pregunto.... ¿cual es el contenido de _ 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: 680
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 _ 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