Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    creare una tabella dinamicamente? [oledb]

    sto creando un'applicazione che permette a un admin di un sito (io :gren: ) di inserire le classifiche delle gare di sci mediante l'inserimento dati dentro dei form che poi vanno a memorizzare il tutto in una tabella "nome_gara" dentro il mio bel databeisino di access.
    ora, quello che vorrei fare è dare la possibilita' a questo admin di aggiungere dinamicamente una nuova tabella al database riguardante una nuova gara...è possibile? sepoffa'?
    avevo in mente di creare una sub aggiungi_gara che creasse una tabella con una struttura predefinita (nel senso che l'utente non deve inserire i campi della tabella perchè questi sono gia' impostati all'interno della sub)....a questo punto scatta la domanda: COME FACCIO?? e soprattutto SEPOFFA'?
    ...illuminatemi, vi prego!
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  2. #2
    Direttamente dalla guida di Access:
    Sintassi

    CREATE TABLE tabella (campo1 tipo [(dimensioni)] [NOT NULL] [indice1] [, campo2 tipo [(dimensioni)] [NOT NULL] [indice2] [, ...]] [, CONSTRAINT indicemulticampo [, ...]])

    L'istruzione CREATE TABLE è composta dalle parti descritte di seguito.

    Parte Descrizione
    tabella Nome della tabella da creare.
    campo1, campo2 Nome del campo o dei campi da creare nella nuova tabella. È necessario creare almeno un campo.
    tipo Tipo di dati di campo nella nuova tabella.
    dimensioni Dimensioni del campo in caratteri, solo per campi con tipo di dati Testo e Binario.
    indice1, indice2 Proposizione CONSTRAINT che definisce un indice a campo singolo. Per ulteriori informazioni su come creare questo indice, vedere l'argomento relativo alla proposizione CONSTRAINT.
    indicemulticampo Proposizione CONSTRAINT che definisce un indice multicampo. Per ulteriori informazioni su come creare questo indice, vedere l'argomento relativo alla proposizione CONSTRAINT.

  3. #3
    In microsoft Sql server puoi usare le query parametrizzate.

    Cioè in una SP farei così:

    DECLARE @str as nvarchar(500)

    SELECT @str = 'create table ' + @nomegara + ' ecc ecc ecc ecc

    (così tu costruisci la stringa da eseguire)

    EXECUTE(@str)

    (e così la esegui)
    = IrCLaB IRC Network CEO =
    contact: irc.irclab.net #irclab
    mail: shardick at irclab dot net

  4. #4
    il problema è che purtroppo mi tocca usare oledb... :\
    quindi
    la sintassi è CREATE TABLE tabella (campo1 tipo [(dimensioni)] [NOT NULL] [indice1] [, campo2 tipo [(dimensioni)] [NOT NULL] [indice2] [, ...]] [, CONSTRAINT indicemulticampo [, ...]])

    il fatto è che non mi capisco...devo inserire la stringa "create ecc ecc" dentro un comando select\insert oppure è un comando a se?
    e soprattutto: COME SELEZIONO LA TABELLA POI?

    di access nn so praticamente niente...uffa...
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  5. #5
    Utente di HTML.it L'avatar di Cartman
    Registrato dal
    Sep 2002
    Messaggi
    246
    ma perchè devi creare una tabella per ogni gara?
    e se hai 1000 gare devi fare 1000 tabelle?
    io al tuo posto metterei tutto in un unica tabella (classifiche) e poi relazionarla con un altra tabella (gare) che contiene i dati della gara (nome, id, ecc..)
    quando inserisci una nuova gara aggiungi un record alla tabella gare, e poi scrivi la classifica sulla tabella classifica riportandoti l'id_gara di gare in un campo chiave esterna di classifica per ogni record inserito.
    2 sole tabelle è meglio che mille (principio fondamentale sui db relazionali).
    C.
    Damose da fa...e volemose bene.
    Carol Woityla 26-2-2004

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 © 2026 vBulletin Solutions, Inc. All rights reserved.