Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    21

    Partizionamento verticale

    Il mio "problema" è questo. Io ho un partizionamento verticale, e quindi, quando inserisco in una tabella, devo prendere l'auto incrementante appena inserito e metterlo nella seconda tabella. Ora se:
    - io inserisco nella tabella A
    - qualcun altro inserisce nella tabella A
    - io prendo l'ultimo autoincrementante inserito e aggiorno la tabella B
    cosa succederebbe? Prenderei l'autoincrementante mio o l'altro? Devo PER FORZA usare transazioni oppure last/mysql_insert_id() possono ritornare in qualche modo l'ultimo che ho inserito IO e non l'ultimo inserito in generale? Non so se mi spiego

  2. #2
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    mysqli_insert_id() torna l'ultimo id generato da una query appartenente alla medesima connessione client, quindi se il metodo lo invochi tu l'id è quello generato da te e da nessun altro
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    21
    E se io questa la cosa la facessi in una store procedure? Li non posso usare il mysql_insert_id.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    21
    Nessuno mi può aiutare?

  5. #5

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    21
    Ma quello che non capisco è:
    Io posso in una stored procedure inserire nella tabella A, fare last_insert_id() e poi inserire nella "sottotabella" B per la gestione di un partizionamento verticale? Non so se last_insert_id nella stored procedure mi ritorna l'ultimo che ho inserito io o l'ultimo globalmente. Poi un'altra cosa che non mi torna: se la seconda insert fallisse per un qualche motivo, dovrei cancellare la prima. Con che condizione potrei fare il rollback? Scusate se continuo a chiedere, ma alle superiori non avevamo fatto i db in profondità così, e come cose mi sono nuove.

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.