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

    [VB6] ricerca avanzata in database

    ciao a tutti ho un problemino sulla ricerca in un database
    ho un database che contiene 3 campi (titolo indirizzo numero) li visualizzo in una maschera. ed ho il controllo data per scandirli

    titolo: bla bla bla
    indirizzo: xxxxxxxxx
    numero: 1111111111

    |<<- | <- | -> | ->>| (per andare avanti e indietro "spero si capisca!")

    voglio fare una funzione che ricerchi:

    esempio database con record fittizi
    codice:
    titoli            indirizzi          numeri
    axvaa  *          aaax               111
    adfga             bbbb               222
    agter             cccc               333
    gfdfs             dddd               444
    sdfaa  *          eeee               555
    kjhkj             ffff               666
    ...               ...                ...
    se cerco i titoli che contengono la stringa "aa" allora la maschera deve poter scandire il recordset solo al n°1 e al n°5 (quelli con gli asterischi)
    come posso fare?
    la ricerca l'ho fatta... credo funzioni
    ma come posso selezionare solo quelli che corrispondono al criterio imposto?

    grazie

    codice:
    datPrimaryRS.Recordset.MoveFirst
    While (Not datPrimaryRS.Recordset.EOF)
        
        titleLEN = Len(txtTitolo.Text)
        cercaLEN = Len(cerca.Text)
        controllo = 0
        For i = 1 To titleLEN
            If cerca.Text = Mid(txtTitolo.Text, i, cercaLEN) Then controllo = 1
        Next i
        If controllo = 1 Then
        'seleziona il titolo, il numero e l'indirizzo nel database
        datPrimaryRS.Recordset.MoveNext
    Wend

  2. #2
    Utente di HTML.it L'avatar di yyzyyz
    Registrato dal
    Oct 2001
    Messaggi
    1,653
    secondo me potresti inviargli una query tipo:

    sql="select * from miatabella"
    datPrimaryRS.open (sql)
    Datagrid1.DataSource= datPrimaryRS

  3. #3
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, usa una query del genere:
    codice:
    SELECT * FROM NOMETABELLA WHERE TITOLO LIKE '*AA*'
    Jupy

  4. #4
    ok vi ringrazio dell'attenzione e delle risposte... poi proverò entrambi i metodi e vi farò sapere grazie!

  5. #5
    ho utilizzato il LIKE però con il % perché gli * non li prendeva e ritornava 0 record (con ADODC)...
    poi in un altro progetto ho utilizzato un semplice Data1 ed invece ho dovuto utilizzare gli * perché al contrario non gli piaceva il %.

    come mai? ciao!

  6. #6
    Utente di HTML.it L'avatar di yyzyyz
    Registrato dal
    Oct 2001
    Messaggi
    1,653
    nn so da quello ke ho visto mi pare ke la sintassi giusta prevede il percentuale anzike il carattere jolly, pero' kiederei l'opinione di altri

    codice:
    SELECT * FROM NOMETABELLA WHERE TITOLO LIKE '%AA%'

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.