Scopo
Formatta un'espressione in modo da poter essere inclusa in uno statement SQL, sistemando gli apici singoli e formattando l'espressione se necessario.
Questa funzione è molto utile per comporre il testo di una query SQL da programma.
Sintassi
string s = ""
//
s := Database.ToSQL(espressione)
//
s := Database.ToSQL(espressione)
Argomenti
Espressione | Espressione da convertire; può essere di qualsiasi tipo tranne BLOB e Object |
Valore di ritorno
Viene ritornata l'espressione convertita in una stringa adatta ad essere usata in un testo di una query SQL.
Esempio di codice
// *************************************************
// Formatta un'espressione per essere inclusa in SQL
// *************************************************
public void QueryAnalyzer.ToSQL()
{
date time dataora = #1899/12/30 00:00:00# //
int intero = 0 //
float virgolamobile = 0 //
//
// Apro la pagina dei messaggi
Risultati.SelectPage(Messaggi.Me())
//
// Provo a convertire il testo in un DateTime
try
{
dataora := ToDateTime(Query.Query)
if NOT(IsNull(dataora))
{
Messaggio.Messaggio := NorthwindDB.ToSQL(dataora)
return
}
}
//
// Provo a convertire il testo in un Float
try
{
virgolamobile := ToFloat(Query.Query)
if NOT(IsNull(virgolamobile)) AND virgolamobile <> ZERO
{
Messaggio.Messaggio := NorthwindDB.ToSQL(virgolamobile)
return
}
}
//
// Provo a convertire il testo in un Integer
try
{
intero := ToInteger(Query.Query)
if NOT(IsNull(intero)) AND intero <> ZERO
{
Messaggio.Messaggio := NorthwindDB.ToSQL(intero)
return
}
}
//
// Mostro il risultato
Messaggio.Messaggio := NorthwindDB.ToSQL(Query.Query)
}
// Formatta un'espressione per essere inclusa in SQL
// *************************************************
public void QueryAnalyzer.ToSQL()
{
date time dataora = #1899/12/30 00:00:00# //
int intero = 0 //
float virgolamobile = 0 //
//
// Apro la pagina dei messaggi
Risultati.SelectPage(Messaggi.Me())
//
// Provo a convertire il testo in un DateTime
try
{
dataora := ToDateTime(Query.Query)
if NOT(IsNull(dataora))
{
Messaggio.Messaggio := NorthwindDB.ToSQL(dataora)
return
}
}
//
// Provo a convertire il testo in un Float
try
{
virgolamobile := ToFloat(Query.Query)
if NOT(IsNull(virgolamobile)) AND virgolamobile <> ZERO
{
Messaggio.Messaggio := NorthwindDB.ToSQL(virgolamobile)
return
}
}
//
// Provo a convertire il testo in un Integer
try
{
intero := ToInteger(Query.Query)
if NOT(IsNull(intero)) AND intero <> ZERO
{
Messaggio.Messaggio := NorthwindDB.ToSQL(intero)
return
}
}
//
// Mostro il risultato
Messaggio.Messaggio := NorthwindDB.ToSQL(Query.Query)
}
- La modalità di conversione dipende dal tipo di database, soprattutto per quando riguarda le date e le espressioni UNICODE.
- Se l'espressione è nulla, allora la stringa ritornata è NULL.
Ultima modifica: 13/07/2008 / Validità: da 7.0.3200