Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    13

    problemi con sql

    Ragazzi ho bisogno di sapere su come si scrive la sintassi corretta per dichiarare un campo di una tabella con il valore (Consenti lunghezza Zero=Sì)?
    Nel mio programma gestionale lui con il Create Table si crea le tabelle e i vari campi ma voglio dichiarare questi campi con lunghezzazero=si.. come si scrive la sintassi corretta?
    Logicamente parlo di visual basic

    Grazie in anticipo

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    13
    ragazzi nessuno sa rispondermi??? E' alquanto urgente... praticamente sono bloccato

  3. #3
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Se desideri ottenere un campo con lunghezza = 0 permessa non devi fare nulla, a parte dichiarare la sua lunghezza massima.
    come nell'esempio
    codice:
        ' Crea una tabella con due campi non  obbligatori
        sSQL = "CREATE TABLE Simple " & _ 
               "(ID numeric(6), DESCR archar(30) )"
        cnn.Execute sSQL
    Viceversa, se i campi sono richiesti :
    codice:
        ' Crea una tabella con due campi obbligatori
        sSQL = "CREATE TABLE Simple " & _ 
               "(ID numeric(6)  NOT NULL," & _
               " DESCR archar(30) NOT NULL)"
        cnn.Execute sSQL
    Ciao

  4. #4
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Nell'esempio che ti ho postato si è persa la v di varchar per cui :
    codice:
        sSQL = "CREATE TABLE Simple5 " & _
               "(ID numeric(6), DESCR varchar(30))"
        cnn.Execute sSQL
    codice:
        sSQL = "CREATE TABLE Simple5 " & _
               "(ID numeric(6) NOT NULL ," & _
               " DESCR varchar(30) NOT NULL)"
        cnn.Execute sSQL
    Ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    13
    ok... con NOT NULL mi cambia l'attributo "Richiesto=sì" ma per problemi logistici mi interessa cambiare l'attributo "Consenti lunghezza zero=sì".... Cosa si scrive????
    Devo cambiare questo xkè altrimenti quando io sono in esecuzione in modalità dao.addnew e ad esempio scrivo qualcosa su un campo associato e poi la cancello e faccio dao.update lui mi genera un errore perchè quel campo non può contenere lunghezza zero.

    Vi prego datemi una mano....Ciao

  6. #6
    Utente di HTML.it L'avatar di MMarzia
    Registrato dal
    Mar 2001
    Messaggi
    1,781
    come già detto dall'altra parte: database e/o linguaggio/versione anche nel titolo, che possibilmente dovrebbe essere meno generico
    ti ricordo inoltre che il crossposting è vietato



    è tutto scritto nel regolamento
    io sono festosamente cicciottello :: e. cartman

    t'amo senza sapere come, nè quando nè da dove,
    t'amo direttamente senza problemi nè orgoglio:
    così ti amo perchè non so amare altrimenti

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    13
    Chiedo scusa dell'errore ma, ti assicuro che non volevo fare crossposting è soltanto che mi sono accorto di aver postato nella sezione sbagliata e quindi ho riscritto il problema in questa sezione...
    Per quanto riguarda il DB è Access e il linguaggio di prog. è Visual Basic....

    Salve a tutti

  8. #8
    Utente di HTML.it L'avatar di MMarzia
    Registrato dal
    Mar 2001
    Messaggi
    1,781
    prima di creare doppioni sarebbe bene chiedere ai mod di spostare le discussioni: siamo qui anche per questo

    versione di VB?
    io sono festosamente cicciottello :: e. cartman

    t'amo senza sapere come, nè quando nè da dove,
    t'amo direttamente senza problemi nè orgoglio:
    così ti amo perchè non so amare altrimenti

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    13
    Mi servirà per la prossima volta...
    La versione è VB6..... e spero che il mio problema si possa risolvere..


    Grazie a tutti in anticipo..... Bye

  10. #10
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Per avere un controllo granulare sulle proprietà dei campi non puoi usare comandi SQL, ma puoi seguire l'approccio programmatico.
    La guida MSDN cita testualmente :
    Using SQL Data Definition Language statements, you can only specify the field names and data types. Use programmatic DAO access to specify all properties.
    Ti riporto anche l'esempio tratto da MSDN :
    codice:
    Dim dbs As Database
    Dim tdf As TableDef
    Dim fldID As Field
    Dim fldName As Field
    Dim fldResponse As Field
    Dim fldClass As Field
    Set dbs = OpenDatabase("C:\MYTEST.MDB")
    
    Set tdf = dbs.CreateTableDef("Marketing Survey")
    Set FldID = tdf.CreateField("ID", dbInteger)
        fldID.Required = True
    
    Set fldName = tdf.CreateField("Name", dbText)
        fldName.Required = True
        fldName.Size = 40
        fldName.AllowZeroLength = True
        fldName.DefaultValue = "Unknown"
    
    Set fldResponse = tdf.CreateField("Response", dbMemo)
    
    Set fldClass = tdf.CreateField("Class", dbText, 10
        fldClass.Required = True
        fldClass.ValidationRule = "in('A','B','X')"
        fldClass.ValidationText = "Enter of of A, B, or X"
    
    tdf.Fields.AppendFldID
    tdf.Fields.Append fldName
    tdf.Fields.Append fldResponse
    tdf.Fields.Append fldClass
    dbs.TableDefs.Append tdf
    dbs.Close
    La proprietà che ti interessa è "AllowZeroLength = True"

    Ciao.

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.