Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 29
  1. #11
    Devo insistere!!!
    codice: select*fromNomeTabellawherereplace(campo,'.', '') like'%valore%'
    In questo modo se in un campo ho memorizzato una sigla tipo U.S.L. e voglio dare modo all'utente pigro di cercarla mettendo nella textbox USL, con questa funzione la troverà lo stesso.
    E ripeto: FUNZIONA!!! Sul PC dove è installato Office 2010 FUNZIONA, mentre sull'altro no, dicendo che non riconosce la funzione REPLACE.

  2. #12
    codice:
    select * from NomeTabella where replace(campo,'.', '') like'%valore%'

  3. #13
    E bravo Oregon, tu hai capito.

  4. #14
    A dire la verità io non cercavo aiuto circa il motivo per cui non funziona, perchè, come ho già detto, facendo delle ricerche, l'ho capito, vale a dire: è una funzione che vb net prende da access e quindi è legata alla versione di Access installata sul PC.
    Io volevo sapere se c'è un'altro modo per raggiungere il medesimo risultato(non troppo arzigogolato, tipo scorrere tutti i record della tabella e ogni volta vedere se soddisfa la ricerca con e senza punti, cancellando dal dataset quelli che non la soddisfano e poi filtrare con un dataview solo i record non cancellati)

  5. #15
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da stellinaxxx Visualizza il messaggio
    Devo insistere!!!
    codice: select*fromNomeTabellawherereplace(campo,'.', '') like'%valore%'
    In questo modo se in un campo ho memorizzato una sigla tipo U.S.L. e voglio dare modo all'utente pigro di cercarla mettendo nella textbox USL, con questa funzione la troverà lo stesso.
    E ripeto: FUNZIONA!!! Sul PC dove è installato Office 2010 FUNZIONA, mentre sull'altro no, dicendo che non riconosce la funzione REPLACE.
    Puoi insistere fin che vuoi.
    E' completamente sbagliata, e la tua spiegazione ne è la prova, senza ombra di dubbio.
    Comunque ritengo inutile continuare questa discussione.

  6. #16
    Quote Originariamente inviata da gibra Visualizza il messaggio
    Puoi insistere fin che vuoi.
    E' completamente sbagliata, e la tua spiegazione ne è la prova, senza ombra di dubbio.
    Comunque ritengo inutile continuare questa discussione.
    Come detto da oregon, temo ci sia un misunderstanding... non ho riferimenti sul dialetto SQL di Access, ma una funzione del genere esiste ad esempio in SQLite, e quel codice sarebbe assolutamente corretto. Per ogni record, il DBMS prende il contenuto del campo campo ed elimina tutti i punti prima di confrontarlo con la clausola like. Ovvero, ovviamente non opera sul nome del campo, ma sul suo contenuto (come qualunque funzione che si possa richiamare in SQL).
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #17
    Caro gibra, tutti qui hanno capito che sei tu che hai torto, leggiti i vari post di Oregon, MlItaly e Optime. Non c'è niente di male a dire che non conosci quella funzione.

  8. #18
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Come detto da oregon, temo ci sia un misunderstanding... non ho riferimenti sul dialetto SQL di Access, ma una funzione del genere esiste ad esempio in SQLite, e quel codice sarebbe assolutamente corretto. Per ogni record, il DBMS prende il contenuto del campo campo ed elimina tutti i punti prima di confrontarlo con la clausola like. Ovvero, ovviamente non opera sul nome del campo, ma sul suo contenuto (come qualunque funzione che si possa richiamare in SQL).
    Appunto! MItaly, mi hai appena dato ragione!
    Infatti la regola è che:

    prende il contenuto del campo campo

    La questione NON E' se la funzione Replace() esista o meno; ci mancherebbe altro che dopo 15 anni di programmazione non la conoscessi!!!
    Il problema è che NON E' POSSIBILE usarla in quel modo, e francamente trovo davvero strano che nessuno se ne sia accorto.

    Stellinaxxx la usa facendo il Replace sul NOME del campo della tabella, NON sul contenuto del campo; il che non ha senso.
    Ammesso, e non concesso, che in Access puoi scrivere i nomi dei campi come ti pare basta che poi nelle query questi siano inclusi tra parentesi quadre, non ha comunque senso fare il Replace sul nome del campo, lo si deve fare sul contenuto.

    Questa non è un'opinione. E' un fatto.

    Tra l'altro, poi, è lo stesso stellinaxxx che afferma di volerla usare per tale scopo:
    Quote Originariamente inviata da stellinaxxx Visualizza il messaggio
    Devo insistere!!!
    codice: select*fromNomeTabellawherereplace(campo,'.', '') like'%valore%'
    In questo modo se in un campo ho memorizzato una sigla tipo U.S.L. e voglio dare modo all'utente pigro di cercarla mettendo nella textbox USL, con questa funzione la troverà lo stesso.
    solo che la stringa SQL riportata è sbagliata.

    Suggerirei di prestare più attenzione a quello che si legge, e si scrive.

  9. #19
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da stellinaxxx Visualizza il messaggio
    Caro gibra, tutti qui hanno capito che sei tu che hai torto, leggiti i vari post di Oregon, MlItaly e Optime. Non c'è niente di male a dire che non conosci quella funzione.
    No comment.

  10. #20
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    @stellina ... ho provato con 2003 e funziona eseguendo la query da Access.

    Non ho provato ad accedere da VB.NET ... Puoi mostrare il codice VB che usi per aprire la connessione ed eseguire la query ?

    Anche se questa discussione

    http://stackoverflow.com/questions/4...inst-ms-access

    mi fa pensare che non ci siano soluzioni ...
    Ultima modifica di oregon; 09-10-2013 a 12:22
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Tag per questa discussione

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.