Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [VB.net] Funzioni all'interno di CommandText

    Ho cercato anche su MSDN2, ma niente da fare, non trovo documentazione utile al mio problema....oppure non so cercare.

    La questione è questa: sto cercando di creare una stringa sql (CommandText) nella quale venga inserita una funzione che gestisca alcuni dei campi della query, che restituisca direttamente un risultato boolean, quindi non che restituisca una stringa.

    Per semplificare, se teoricamente la stringa fosse:
    sql = "SELECT * FROM MyTable WHERE Campo1 = 'Rosso'"

    avrei bisogno di ottenere lo stesso risultato scrivendo una cosa del tipo:
    sql = "SELECT * FROM MyTable WHERE " & Myfunzione(...???...)
    oppure anche:
    sql = string.format("SELECT * FROM MyTable WHERE {0}", Myfunzione(...???...))

    poi si avrà:

    function Myfunzione(...???...) as Boolean
    ......
    end function

    che restituisca true o false a seconda che, nell'esempio sopra, abbia riscontrato che nel campo "Campo1" sia inserito 'Rosso'...quindi mi serce che all'interno della funzione si possano trattare i campi poi presenti nella stringa!


    Non voglio che restituisca una stringa!!!!

    Spero di essermi spiegato!!!

  2. #2
    Ripropongo questo argomento poiche un problema simile mi è tornato!!

    Infatti mi piacerebbe creare una funzione che paragoni un cognome con quelli presenti in una colonna di una tabella. La funzione dovrà riscontrare il cognome e ritornare un numero che aquivale alla 'compatibilità di somiglianza'.
    Intanto se conoscete già una funzione (class) di questo tipo se me la segnalaste ve ne sarei grato, ma poi come posso inserire nella stringa la chiamata della funzione???

    Io ho fatto:
    codice:
    ..."SELECT idNominativi, Cognome, Nome, [Data di Nascita], CreaRiscontro([Cognome], '" & TxT_Cognome & "') As [Riscontro] "
    ....
    
    Public Shared Function CreaRiscontro(ByVal Cognome_db, ByVal Cognome_txt)
    ....
    end function
    così mi da errore:
    La funzione 'CreaRiscontro' non è definita nell'espressione.

    Come posso fare??

  3. #3
    Perdonami ma proprio non capisco cos'è che vorresti ottenere. Vuoi che al click di un bottone ti venga restituito True se nel Database c'è un utente che abbia nome e cognome che gli passi tu di volta in volta e False se non esiste nessun utente con quel nome e cognome???

  4. #4
    scusa la poca chiarezza!
    I due discorsi non sono collegati, se non che dalla necessità di avere una funzione in una stringa SQL!

    Il mio dubbio è che la funzione in questione, prima di specificarla, occorre un prefisso per indicare che è una funzione sql!

  5. #5
    Non volermi male ma penso che così non ne usciamo più!!! Fai chiarezza nella tua mente su cosa vorresti ottenere e posta tutto, ti consiglio di postare anche il codice che usi(anche se non funziona).

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quale DBMS usi? Se ho capito, e usi SQL Server 2005 leggi

    http://www.microsoft.com/italy/msdn/...ql/sqlclr.mspx

  7. #7
    semplice database di Access!

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Mi sa che non puoi con Access ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.