Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Base De Datos Sqlite3 Fedora 11 [solucionado]
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Base De Datos Sqlite3 Fedora 11 [solucionado] 
 
Que tal, dando lata de nuevo. El problema es que yo ya habia hecho un programa en gambas sobre ubuntu 9.04 si no recuerdo mal, hace poco migre a fedora 11 (solo por probar). El programa de inicio me pedia contrase;a y funcionaba bien, ahora que lo pruebo aqui nomas no doy una, la verdad solo copie y pegue, pero ya funcionaba bien y aqui me manda un error de null object que no entiendo, el codigo es este

' gambas class file
PRIVATE conect AS Connection
PRIVATE res AS Result

PUBLIC SUB CancelarL_Click()
  
   conect.Close()
   ME.CLOSE

END

PUBLIC SUB AceptarL_Click()
  
   res = conect.Exec("select * from UsuariosEE")
   IF res["Usuario"] = UsuarioL.Text AND res["Contrasena"] = ContrasenaL.Text THEN
      conect.Close()
      ME.Close()
      Form.Form_Open()
   ELSE
      Message.Error("Datos invalidos")
   END IF

END

PRIVATE FUNCTION Form_Open() AS Boolean

   conect = NEW Connection
   conect.Host = "/home/erik/...."
   conect.Name = "UsuariosEE"
   conect.Type = "sqlite3"
  
   TRY conect.OPEN()
   IF ERROR THEN
      Message.Error("No se pudo crear conexion")
   END IF
    
    RETURN FALSE
END

cuando doy click en cualquiera de los botones me manda null object, en cancelar me se;ala la linea de "conect.Close()" y en aceptar me se;ana la linea    "res = conect.Exec("select * from UsuariosEE")"

Espero respuesta y gracias.
 



 
última edición por Erik el Jueves, 16 Diciembre 2010, 02:30; editado 1 vez 
Erik - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Sqlite3 Fedora 11 
 
Tu problema es que no inicializas la variable conect.
Símplemente cambia la línea donde la declaras con el parámetro NEW

PRIVATE conect AS NEW Connection

No basta con declarar la clase a la que pertenece la variable, hay que generar la instancia y eso es lo que hace NEW.
Mientras conect es un valor null.

Suerte
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Sqlite3 Fedora 11 
 
genial, ya no me manda el error, gracias, pero ahora me manda otro que dice connection is not opened, en res = conect.Exec("select * from UsuariosEE") jejejeje, voy a checarle ese nuevo error. De entrada vi que no puse el nombre de mi tabla seria mas bien res = conect.Exec("select * from UsuaCont"), pero aun asi me da el mismo error, en fin, gracias de nuevo, seguire con mi proyectito
 



 
Erik - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Sqlite3 Fedora 11 
 
uuuu ya quedo, parece que mi principal problema era haber creado como funcion privada mi form_open entonces jamas hacia el intento de concetarse a la base, lo descubri poniendo datos mal a proposito y dandome cuenta que no enviaba ningun error, y la instancia con new conection la tengo dentro de la misma funcion pero como no entraba se quedaba como null, por eso al cambiar esto en la declaracion de conect me dejo de enviar el primer error comentado, sin embargo seguia sin conectarse a la base, en fin, cambie un poco el codigo para hacerme menos bolas cuando ingrese mas cosas, lo agrego para quien le interese, y gracias de nuevo.

' gambas class file
PRIVATE conect AS Connection
PRIVATE res AS Result

PUBLIC SUB CancelarL_Click()
  
   conect.Close()
   ME.CLOSE

END

PUBLIC SUB AceptarL_Click()
  
   res = conect.EXEC("select *from UsuaCont")
   IF res["UsuarioT"] = UsuarioL.Text AND res["ContrasenaT"] = ContrasenaL.Text THEN 'nombre de tus textbox y de los campos de tu tabla de base de datos
      conect.Close()
      ME.Close()
      Form1.Form_Open()
   ELSE
      Message.Error("Datos invalidos")
   END IF

END

PRIVATE FUNCTION ConectarBase() AS Boolean
  
   IF conect <> NULL THEN RETURN FALSE
      
   conect = NEW Connection
   conect.Host = "/home/Erik/...."   'direccion donde se encuentra tu base de datos
   conect.Name = "UsuariosEE"    'nombre de tu base de datos
   conect.Type = "sqlite3"
  
   TRY conect.OPEN()
  
   IF ERROR THEN
       conect = NULL
       Message.ERROR("Error al conectar en la base")
       RETURN TRUE
   END IF
  
   RETURN FALSE

END

PUBLIC SUB Form_Open()
  
   ConectarBase()
    
END
 



 
Erik - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Error Eb Base De Datos Sqlite3 hostinglobal Bases de Datos 8 Jueves, 20 May 2010, 09:08 Ver último mensaje
Shell
No hay nuevos mensajes QUe Capacidad De Memoria Tienes La Base De... metalgearxd General 6 Lunes, 22 Julio 2013, 09:51 Ver último mensaje
shordi
No hay nuevos mensajes Forma Correcta En La Conexion De Base De D... Lykan Bases de Datos 13 Miercoles, 29 Abril 2015, 22:25 Ver último mensaje
Lykan
No hay nuevos mensajes Pasar Base De Datos Sqlite3 A Excel pittusa Bases de Datos 7 Viernes, 19 Junio 2015, 08:28 Ver último mensaje
shordi
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron