Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Spostamento record in massa da una tabella

    Salve amici, devo spostare in massa tutti i record contenuti in una tabella di un db, ad un'altra!

    Che istruzione posso utilizzare?

    <%
    dim conn, strConn

    strConn = MM_connAdmin_STRING
    Set conn = Server.CreateObject("ADODB.Connection")
    Conn.Open StrConn

    SQL = "INSERT INTO `SPORT_ARTICOLI` (`ID_CAT`, `ID_SPORT`, `TITOLO`, `TESTO`, `DATA`, `ORA`, `AUTORE`, `POSIZIONE`, `VEDI`) VALUES (..cosa ci metto??.....)"
    conn.Execute (SQL)

    conn.Close
    set conn = Nothing
    Response.Write "

    Inserimenti dell'archivio in Articoli riuscito!</p>"
    %>

    Questa è l'istruzzione che dovrebbe essere eseguita...ma come ciclo... potrei estrarre prima tutti i dati che devo trafserire...ma poi???
    Digital XP - The new expression of digital art! - http://www.mimanchitu.it

  2. #2
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Usa una INSERT SELECT

    codice:
    SQL = "INSERT INTO `SPORT_ARTICOLI` (`ID_CAT`, `ID_SPORT`, `TITOLO`, `TESTO`, `DATA`, `ORA`, `AUTORE`, `POSIZIONE`, `VEDI`) SELECT (stessi campi o equivalenti) from AlLTRA_TABELLA WHERE CRITERI DI SELEZIONE"
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  3. #3

    e l'ID

    e l'ID me lo aggiorna in automatico? Perchè alcuni record potrebbero avere lo stesso ID!
    Digital XP - The new expression of digital art! - http://www.mimanchitu.it

  4. #4
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    No, ti inserisce esattamente quello che selezioni...
    Se l'ID è contatore, escludilo dalla select e dall'insert
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  5. #5

    ok

    Ok provo! Grassie
    Digital XP - The new expression of digital art! - http://www.mimanchitu.it

  6. #6

    errore

    Mi da questo errore:

    Microsoft OLE DB Provider for ODBC Drivers error '80004005'

    [TCX][MyODBC]Operand should contain 1 column(s)

    /admin/archivio/ciclo_sposta.asp, line 30


    la riga 30 è la seguente:
    conn.Execute (SQL)


    Ti riscrivo la query
    SQL = "INSERT INTO `SPORT_ARTICOLI` (`ID_CAT`, `ID_SPORT`, `TITOLO`, `TESTO`, `DATA`, `ORA`, `AUTORE`, `POSIZIONE`, `VEDI`) SELECT (`ID_SPORT`, `TESTO`, `DATA`, `ID_CAT`, `TITOLO`, `VEDI`) FROM `SPORT_ARCHIVIO`"
    Digital XP - The new expression of digital art! - http://www.mimanchitu.it

  7. #7
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Avevo detto:

    stessi campi o equivalenti

    Cioè:

    I campi della select devono essere dello stesso numero e nello stesso ordine dei campi nella insert:

    SQL = "INSERT INTO `SPORT_ARTICOLI` (`ID_CAT`, `ID_SPORT`, `TITOLO`, `TESTO`, `DATA`, `ORA`, `AUTORE`, `POSIZIONE`, `VEDI`) SELECT (`ID_CAT`, `ID_SPORT`, `TITOLO`, `TESTO`, `DATA`, `ORA`, `AUTORE`, `POSIZIONE`, `VEDI`) FROM `SPORT_ARCHIVIO`"
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  8. #8

    stessa cosa

    Stesso identico errore... forse perchè le due tabelle hanno diverso ordine di campi???
    Digital XP - The new expression of digital art! - http://www.mimanchitu.it

  9. #9
    perché i nomi dei campi sono tra apici?

  10. #10
    Utente di HTML.it L'avatar di EmTmE
    Registrato dal
    Jun 2001
    Messaggi
    333

    Re: stessa cosa

    Originariamente inviato da iadream
    Stesso identico errore... forse perchè le due tabelle hanno diverso ordine di campi???
    Sto lavoro tu devi farlo perchè ???? aggiungere campi ad una tabella che avevi già o cosa?
    Potresti anche duplicare la tabella da access e fare una pagina che ti ci aggiunge solo i dati nei nuovi campi faresti molto prima e non correresti il rischio di "perderti" fra i campi
    Oppure ancora mettere i dati diciamo vecchi in un db fittizio magari in formato csv e importarli nel tuo db ufficiale...
    Se dai maggiori info sulla logica e su quelo che devi fare penso sia + semplice darti una mano.
    Premesso che con la sintassi ci litigo molto anche io

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.