Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854

    creazione tabelle e campi con loop

    codice:
    counter=0
    camp=0
    controlcampo(tabcnome(counter)(camp))
    DO while NOT counter=numtab
    addconn.Execute("CREATE TABLE" & systemtab(counter) & "("
    DO WHILE NOT tabcnum(counter)=camp
     & nome & ctype & "(" & x & "),"
    controlcampo(tabcnome(counter)(camp))
    )
    LOOP
    counter=counter+1
    LOOP
    questo script dovrebbe praticamente creare un x numero di tabelle e un x numero di campi per tabella, è un po complesso visto il numero di variabili spero di riuscire a spiegarmi
    Dunque per prima cosa uso counter per controllare il numero di loop fatti e vedere se è uguale al numero di tabelle che devo creare per fermarmi

    counter=0
    DO while NOT counter=numtab

    poi mi connetto e creo la tabella:
    addconn.Execute("CREATE TABLE" & systemtab(counter)& "("

    systemtab è il nome variabile della tabella ed è definito in un array
    counter naturalmente individua in modo univoco l'array

    poi istamzio un altro loop ( non sono proprio sicuro che si possa fare in questo modo ma non ne vedevo altri)

    DO WHILE NOT tabcnum(counter)=camp
    tabcnum è il numero di campi per tabella ed è definito in un array
    counter naturalmente individua in modo univoco l'array ed uguale alla tabella

    poi
    & nome & ctype & "(" & x & "),"

    questo
    è dato dalla funzione qua sotto
    controlcampo(tabcnome(counter)(camp))

    che divide in nome ctype e x una variabile, la funzione inoltre aggiunge 1 alla variabile camp per permettere di passare all'array successivo.


    poi

    LOOP
    counter=counter+1
    LOOP

    si chiudono i loop e si aggiunge uno al counter dei nomi della tabella per passare alla tabella successiva

    l'errore (se ne saranno un sacco) viene inserito qua
    addconn.Execute("CREATE TABLE" & systemtab(counter) & "("
    ^^



    grazie

  2. #2

  3. #3
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    scusami ma.. non capisco
    io so come creare le tabelle e i campi ma volio farlo con un loop di array!

  4. #4
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    voGlio

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Fatti stampare le query prima di eseguirle. Ti sarà più semplice capire perché non va e come porre rimedio.

    Roby

  6. #6
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    si infatti già lo stavo facendo, ma secondo te quel loop dentro loop funziona?

  7. #7
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    inoltre perchè

    DO while NOT counter=numtab
    addconn.Execute("CREATE TABLE" & systemtab(counter) & "(" & nome & ctype & "(" & x & "),")
    LOOP

    anche se non da errore in query
    mi dice loop senza do :S

  8. #8
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    :rollo:

  9. #9
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    e dai però

  10. #10
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    tiposto il codice non si sa mai...

    codice:
    SELECT CASE lookfortables
    CASE tabexist="true" 
    'creo le tabelle
    counter=0
    camp=0
    controlcampo(tabcnome(counter)(camp))
    DO while NOT counter=numtab
    addconn.Execute ("CREATE TABLE" & systemtab(counter) "("
    DO WHILE NOT tabcnum(counter)=camp
     & nome & ctype & "(" & x & "),"
    controlcampo(tabcnome(counter)(camp))
    )
    LOOP
    'se cè un errore segnalo e proseguo
    on error resume next
    response.Write("no data found!")
    syserror="true"
    if not syserror="true" then
    response.write("table" & systemtab(counter) & "created!")
    syserror="false"
    end if
    counter=counter+1
    LOOP
    CASE ELSE
    response.write("no tables to insert!")

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.