Italian community of Lazarus and Free Pascal

Programmazione => Mobile => Topic aperto da: Narciso - Febbraio 19, 2025, 06:32:37 pm

Titolo: [SOLVED]Problema con sqlite
Inserito da: Narciso - Febbraio 19, 2025, 06:32:37 pm
l'istruzione
 st:= SqliteDataAccess1.Select('SELECT Tipo FROM '+tablename+' WHERE _ID = '+inttoSTR(p));   

mi dovrebbe restituire il testo del campo 'Tipo'
ma la stringa st contiene anche il nome del campo.
Viene fuori una stringa cosi': 'Tipo# Olio e Freni';
Si puo' fare in modo che restituisca solo il tipo(Oilio e Freni) e non la descrizione del campo (Tipo#)?
Sto usando sqlite di lamw.
Titolo: Re:Problema con sqlite
Inserito da: xinyiman - Febbraio 20, 2025, 08:30:12 am
Io in passato ho usato LAMW con successo e questo comportamento non l'ho riscontrato. La seguente sintassi dovrebbe fare quello che dici tu

Codice: [Seleziona]
  st:= SqliteDataAccess1.Select('SELECT Tipo FROM '+tablename+' WHERE _ID = '+inttoSTR(p));    

  AndroidModuleMain.jSqliteDataAccess1.Select(st, false);
  AndroidModuleMain.jSqliteCursor1.MoveToFirst;

  while not AndroidModuleMain.jSqliteCursor1.EOF do
  begin
       tipo  := AndroidModuleMain.jSqliteCursor1.GetValueToString('Tipo');

       AndroidModuleMain.jSqliteCursor1.MoveToNext;
  end;   
Titolo: Re:Problema con sqlite
Inserito da: schumi - Febbraio 22, 2025, 09:59:52 am
questo funziona nella mia app

Cursor.GetValueAsString('nomecampo')

per il resto come riportato da xinyiman
PS ricordati di collegare DataAccess e cursor
Titolo: Re:Problema con sqlite
Inserito da: Narciso - Febbraio 22, 2025, 03:34:09 pm
ho risolto cosi':
Codice: [Seleziona]
sk:= SqliteDataAccess1.Select('SELECT * FROM '+tablename+' WHERE _ID='+inttostr(p));
   st:= Sqlitecursor1.GetValueAsString('Tipo');
   sc:= Sqlitecursor1.GetValueAsString('Costo');
   sd:= Sqlitecursor1.GetValueAsString('Data');
   sa:= Sqlitecursor1.GetValueAsString('Avviso');
   Edittext2.text:= ST;
   edittext4.Text:=sc;
   Button5.Text:=sd;
   button3.text:=sa;