23 messaggi dal 20 giugno 2002
Ciao,
qualcuno sa dirmi come posso rinominare i campi di una tabella, o spostarli di posizione o semplicemente impostare la proprietà "Richiesto" a false attraverso ASP?
Il comando SQL "ALTER TABLE nomTabella ALTER COLUMN nomColonna TEXT(25) NULL" non mi funziona se prima ho già impostato "NOT NULL".
E nemmeno le istruzioni "MOVE" e "RENAME".

Grazie per l'aiuto.

Christian
265 messaggi dal 28 aprile 2001
c.iallo ha scritto:
Ciao,
qualcuno sa dirmi come posso rinominare i campi di una tabella, o spostarli di posizione o semplicemente impostare la proprietà "Richiesto" a false attraverso ASP?
Il comando SQL "ALTER TABLE nomTabella ALTER COLUMN nomColonna TEXT(25) NULL" non mi funziona se prima ho già impostato "NOT NULL".
E nemmeno le istruzioni "MOVE" e "RENAME".

Grazie per l'aiuto.

Christian


Penso che il problema si dovuto ad ACCESS.
ACCESS usa un motore Jet 3.5 che praticamente accetta stringhe SQL scritte con codifica ANSI-89, mentre tu stai inserendo codifiche in ANSI 92 (per i nuovi DB relazionali tipo MSSQL- MYSQL etc...).

Prova a cercare lo standard di sintassi di ANSI 89 e ... incrocia le dita.

Ciao
Filippo

Non dir di me' se di me' non sai, pensa di te ... e poi di me' dirai.

Autore (sottoscritto)
23 messaggi dal 20 giugno 2002
Ciao, grazie per la delucidazione.

Però, ti chiedo, sai dell'esistenza di un metodo come Append o Delete per aggiornare gli oggetti creati da ASP: intendo dire una cosa del genere...

set adox = Server.CreateObject("ADOX.Catalog")
adox.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&nomeDatabase&";"
set K = adox.Tables.Item(nomeTabella)
set idxNew = Server.CreateObject("ADOX.Index")
idxNew.Name = nome ' nome della chiave
idxNew.Columns.Append colonna ' nome della colonna
idxNew.PrimaryKey = true ' se chiave primaria
idxNew.Unique = true ' se unico
K.Indexes.Append idxNew

Io qui creo una chiave primaria. Allo stesso modo posso creare una colonna o una tabella con il metodo, evidenziato, Append. Mi chiedo se esiste un metodo (es. Update) per l'aggiornamento.
Il problema è facilmente risolvibile eliminando col metodo Delete e ricreando l'oggetto con Append. Ma diventa impensabile quando si vuole per esempio rinominare una colonna di una tabella con 10000 record! (se ne crea una temporanea, si copia tutti i record in questa, poi si cancella quella vecchi, poi si crea quella nuova rinominata, poi si ricopia tutto il contenuto in questa: e il tutto bloccando l'accesso in lettura e in scrittura sulla tabella; è impensabile).

Grazie per l'aiuto. Comunque proverò a cercare ciò che mi hai detto.

Ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.