J'ai une base de données Class_Books qui relie les ISBN (de la table Books) aux Class_ID (de la table Classes). Je suis en train de changer ma table Books, donc la clé primaire est un Book_ID (autoincrement INT) au lieu de l'ISBN. Existe-t-il un moyen de mettre à jour Class_Books afin qu'il utilise Book_ID maintenant?Création d'une nouvelle table plusieurs-à-plusieurs
1
A
Répondre
1
MySQL supporte une syntaxe UPDATE multi-tables qui facilite grandement ce type de travail.
ALTER TABLE Class_Books ADD COLUMNS Book_Id INT; -- nullable
UPDATE Books b JOIN Class_Books cb ON b.ISBN = cb.ISBN
SET cb.Book_Id = b.Book_Id;
Ensuite, vous pouvez utiliser ALTER TABLE pour modifier les contraintes, faire cb.Book_Id NOT NULL
, et déposer cb.ISBN.
PS: Je recommande d'appeler Class_Books une table beaucoup à plusieurs ou une intersection tableau. Le mot relation signifie quelque chose de différent dans la théorie relationnelle, et cela n'a rien à voir avec les relations entre les tables.
Questions connexes
- 1. Création d'une nouvelle ABRecord
- 2. Création d'une nouvelle ressource imbriquée
- 3. Création de table FAIL
- 4. Création d'une table cliquable
- 5. Création d'une table Hmisc
- 6. Fonction de création d'une nouvelle variable indéfinie
- 7. Nouvel opérateur C++. Création d'une nouvelle instance
- 8. création Java de nouvelle série trop lent
- 9. Création d'une intention dans une nouvelle méthode
- 10. Android - Création d'une nouvelle activité dans Eclipse
- 11. Création d'une nouvelle exception en C++
- 12. Création d'une nouvelle variable en tirant une valeur à partir d'une table MySQL
- 13. comment définir tableau entier comme un champ lors de la création nouvelle table dans mySQL
- 14. Création d'une nouvelle table sql, où l'un des champs copie les données d'un autre champ de table
- 15. Ajout d'un datarow d'une table existante à une nouvelle table
- 16. Entity Framework 4.0 Création d'une nouvelle entité provenant d'autres entités
- 17. Insérer automatiquement sur une nouvelle table?
- 18. nouvelle table de données Ruby/recherche question
- 19. Création d'une table dans mysql
- 20. Création d'une table dans Datalist
- 21. Création d'une table dans SQL
- 22. grails création de table limitée
- 23. Exception lors de la création d'une nouvelle entité dans RIA
- 24. Erreur lors de la création d'une nouvelle méthode pour une nouvelle classe dans R
- 25. SQL - Comment insérer les résultats de Stored_Proc dans une nouvelle table sans spécifier les colonnes de la nouvelle table?
- 26. Création d'une nouvelle structure de sous-répertoire dans ClearCase?
- 27. Excel Automation From .NET - création d'une nouvelle feuille de travail
- 28. Java: Création d'une nouvelle instance de la classe d'interface utilisateur
- 29. Création d'une nouvelle branche sur le référentiel distant dans git
- 30. Création d'une nouvelle liste dans Sharepoint sur le chemin spécifié
Est-ce la même chose qu'une table * association *? Ou est-ce que je pense à autre chose? – mlschechter
@mlschechter: Cela me semble être un synonyme –
Bien sûr, ne l'appelez pas une * table de relations *, car cela équivaudrait à dire que vous utilisez un * nombre entier *. Sorte de vrai d'une certaine façon, mais cela semble maladroit et redondant. –