querySQL creata dinamicamente da utente


#1

Ciao, volevo sapere se è possibile (e se si come) creare una query SQL
dall’utente. Mi spiego meglio. Vorrei che un utente possa scegliere di
visualizzare solo alcuni campi di una tabella, quindi decida quali campi
la query (SELECT) debba andare a pescare.

E’ possibile?
Grazien in anticipo per l’aiuto.


#2

Ciao,

tempo fa ho chiesto la stessa cosa e bene o male quasi tutti mi han
consigliato di fare così.

Fai un check sui campi da selezionare e per quelli selezionati aggiunti
una
condizione e un valore per tale condizione a due stringhe, dopo tutti i
controlli esegui la query, questo è il codice, da notare l’asterisco su
condvals nella chiamata find, senza non funziona(due giorni per capirlo
asd), inoltre ho usato anche una stringa per restituire il termine
cercato
all’ utente

Saluti Andrea

def result
conds = []
condvals = []

if !params[:search_user_city].empty?
conds << " users.city = ? "
condvals << params[:search_user_city]
search_user_string << "user city: "+params[:search_user_city]
end

if !params[:search_user_country].empty?
  conds << " users.country = ? "
  condvals << params[:search_user_country]
  search_user_string << "user country: 

"+params[:search_user_country]
end

@travels = Travel.find(:all,
                         :include => [:user,:location],
                         :conditions => [conds.join(' and '),

*condvals ])
end

----- Original Message -----
From: “giuseppe” removed_email_address@domain.invalid
To: removed_email_address@domain.invalid
Sent: Wednesday, April 04, 2007 10:13 AM
Subject: [ruby-it] querySQL creata dinamicamente da utente



#3

no guarda è davvero semplice.
prova che te ne accorgi.

----- Original Message -----
From: “giuseppe” removed_email_address@domain.invalid
To: removed_email_address@domain.invalid
Sent: Wednesday, April 04, 2007 11:52 AM
Subject: [ruby-it] Re: querySQL creata dinamicamente da utente

Grazie tante. Sembra un po’ complesso ma adesso provo.
Ciao


Posted via http://www.ruby-forum.com/.



#4

Grazie tante. Sembra un po’ complesso ma adesso provo.
Ciao


#5

“stb” removed_email_address@domain.invalid writes:

Ciao,

tempo fa ho chiesto la stessa cosa e bene o male quasi tutti mi han
consigliato di fare così.

Fai un check sui campi da selezionare e per quelli selezionati
aggiunti una condizione e un valore per tale condizione a due
stringhe, dopo tutti i controlli esegui la query, questo è il codice,

Ma credo che ‘giuseppe’ voglia modificare a runtime l’elenco dei campi
restituiti dalla query, non le condizioni della query.