Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    3

    rendere case-sensitive l'INSERT INTO...

    Ciao a tutti,

    ho un piccolo problema... devo creare un mini sito web per un esame che gestisca l'iscrizione e successivamente il login (2 pagine diverse per la creazione utente e per il login)

    nella pagina di creazione utente, l'utente inserisce user e pw e i crediti iniziali...

    nella pagina successiva faccio un controllo su DB per vedere se il nome utente esiste già.
    Eseguo un controllo anche con lo string compare, per differenziare gli upper dai lowercase.

    In caso negativo, creo l'utente...
    e qui casca l'asino, perché non riesco a trovare il modo di rendere case-sensitive l'INSERT INTO! :-(

    e di conseguenza mi da l'Orrore che la chiave esiste già...

    HELPPPPP!!!

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    3
    Uso un MDB (quindi access) e vi accedo per mezzo di una chiamata OLEDB a JET Engine...

    Vi posto di seguito il codice con cui accedo al DB e con cui controllo se esiste già un utente con quell'username... (uso lo StrCompare per differenziare gli UPPER dai lowercase)

    codice:
    var con
    var conString
    
    con= Server.CreateObject("ADODB.Connection")
    conString = "Provider = Microsoft.Jet.OLEDB.4.0; " + "Data Source = " + Server.MapPath("./bookstore.mdb")
    con.Open(conString)
    
    var sSQLString
    var rst
    
    rst= Server.CreateObject("ADODB.Recordset")
    sSQLString = "SELECT name FROM users WHERE StrComp(name,'"+utente+"', 0) = 0;"
    rst= con.Execute(sSQLString)
    
    if (!rst.EOF) {
                Response.Write("
    
    Nome Utente gi&agrave in uso...</p></div>
    ")
                Response.Write("<p class='infocentro'>clicca qui per ritornare alla pagina di creazione utente!</body></html>")
    			Response.End
    			rst.close()
    			con.close()

    Di seguito invece troate il codice con cui scrivo nel DB (e con cui ho problemi di scrittura xké non mi differenzia gli UPPER dai lower...)

    codice:
    'Scrittura nel DB'
    sSQLString= "INSERT INTO users (name, pass, deposit) VALUES ('"+utente+"','"+password+"', "+crediti+");"
    con.Execute(sSQLString)
    		
    rst.close()
    con.close()
    rst = null
    con = null
    Se avete suggerimenti su come aggirare questo problema, dite pure. THANKS :-)

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Per fare una ricerca case sensitive puoi fare così

    select nome from tabella where strcomp(nome,"MARIO",0) = 0;

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.