elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BATCH]Ayuda Base de Datos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BATCH]Ayuda Base de Datos  (Leído 3,304 veces)
Geormarsch

Desconectado Desconectado

Mensajes: 160



Ver Perfil
[BATCH]Ayuda Base de Datos
« en: 29 Octubre 2011, 03:43 am »

Hola Amigos hoy tengo una duda...
Tengo una base de datos Llamada clientes.txt
En Clientes tengo lo siguiente
------------------------------------
cliente:Perico Los palotes        -
direccion:Angeles 14              -
numero: 1234567                  -
comprasRecientes: Pantalon   -
talla :  46                              -
sexo : M                               -
------------------------------------

Esa es mi base de datos...
ahora de esa base de datos yo quiero obtener solo la linea de que dice 'Cliente'
(Es la primera) Pero si yo quiero buscar una palabre clave dentro de mi BD como lo ago?

Código
  1. @echo off
  2. :menu
  3. cls
  4. echo 1.- Agregar Cliente
  5. echo 2.- Buscar dentro de la BD
  6. set /p o=Elija una opcion :
  7. if %o%==1 (goto add)
  8. if %o%==2 (goto b) else (goto menu)
  9.  
  10. :add
  11. set /p name= Nombre de cliente :
  12. set /p dire=Direccion :
  13. set /p n= Numero:
  14. set /p c= Compras Recientes :
  15. set /p t= Talla :
  16. set /p s= Sexo:
  17. echo %name%>>%windir%\clientes.txt
  18. echo %dire%>>%windir%\clientes.txt
  19. echo %n%>>%windir%\clientes.txt
  20. echo %c%>>%windir%\clientes.txt
  21. echo %t%>>%windir%\clientes.txt
  22. echo %s%>>%windir%\clientes.txt
  23. echo Generado Correctamente
  24. goto menu
  25.  
  26. :b
  27. cls
  28. set /p bo= Que desea buscar dentro de la DB :
  29. rem ahora no se como hacerlo para buscar y almacenar dentro de una variable
  30. rem agamos que busco talla : 46
  31. if %variable%==%bo% (goto find) else (goto not)
  32.  
  33. :find
  34. cls
  35. echo Se encontro el resultado final
  36. goto menu
  37.  
  38. cls
  39. echo No encontrado
  40. goto menu


En línea

"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: [BATCH]Ayuda Base de Datos
« Respuesta #1 en: 29 Octubre 2011, 06:47 am »

Código
  1. type "clientes.txt" | findstr "^cliente"
Código
  1. type "clientes.txt" | find "clientes"


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Geormarsch

Desconectado Desconectado

Mensajes: 160



Ver Perfil
Re: [BATCH]Ayuda Base de Datos
« Respuesta #2 en: 29 Octubre 2011, 16:48 pm »

Código
  1. type "clientes.txt" | findstr "^cliente"
Código
  1. type "clientes.txt" | find "clientes"

Me Podrias explicar el primer code por que lleva ^ ?
Otra Cosa Leo Como lo ago para Almacenar lo encontrado en una variable???
En línea

"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: [BATCH]Ayuda Base de Datos
« Respuesta #3 en: 30 Octubre 2011, 00:55 am »

^ representa el inicio de cadena.

Como queremos checar la cadena que empiece por clientes, añadimos ^ antes de la palabra "clientes."

Para la segunda duda (No probado).

Código
  1. setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%_ in ('type "clientes.txt" ^| findstr "^cliente"') do (
  3.    set "valor=%%_"
  4.    echo El valor es : !valor!
  5. )
   
http://es.wikipedia.org/wiki/Expresi%C3%B3n_regular
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
FranciskoAsdf

Desconectado Desconectado

Mensajes: 231


Ni bueno, ni malo. Solo nada.


Ver Perfil WWW
Re: [BATCH]Ayuda Base de Datos
« Respuesta #4 en: 30 Octubre 2011, 02:38 am »

Lo mejor que puedes hacer para trabajar con "bases de datos" planas, es trabajarlas con puntos y comas ( ; ) como separadores, como los archivos.csv

Por ejemplo

Código:
cliente;direccion;numero;compra:talla
perico;su casa;14;pantalon;25



Y los puedes identificar por ejemplo añadiendo un correlativo al principio o algo así, para que el programa no se confunda cuando hayan clientes con el mismo nombre. o cuando se repita algun dato, porque mas de alguna vez te puede pasar, y batch solo buscara hasta la primera coincidencia.


Eso saludos :D
En línea

Asdf debería ser algún tipo de función.
Geormarsch

Desconectado Desconectado

Mensajes: 160



Ver Perfil
Re: [BATCH]Ayuda Base de Datos
« Respuesta #5 en: 4 Noviembre 2011, 20:40 pm »

Muchas Gracias Amigos Tema Solucionado....
En línea

"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
AYUDA CON BASE DE DATOS VB
Programación Visual Basic
arkangel2002 5 2,312 Último mensaje 15 Septiembre 2006, 23:57 pm
por cristiano1818
[batch]base de datos
Scripting
Mark.18 2 6,224 Último mensaje 16 Octubre 2008, 22:57 pm
por Mark.18
[Batch][Aporte] Base de datos para clientes.
Scripting
Geormarsch 7 5,588 Último mensaje 7 Noviembre 2011, 22:28 pm
por Geormarsch
[Batch] Ayuda base de datos « 1 2 »
Scripting
juan196518 11 7,164 Último mensaje 5 Mayo 2012, 22:13 pm
por juan196518
Ayuda por favor. Batch que almacene datos en un txt consultable
Scripting
VicInFlames 1 3,533 Último mensaje 12 Agosto 2013, 09:39 am
por Meine programmen
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines