Comment ajouter une colonne de type tableau en utilisant phpMyAdmin ou SQL
P粉0128759272024-03-27 00:18:52
0
1
539
Comment ajouter une colonne de type tableau en utilisant phpMyAdmin
Savoir
Modifiez le nom de la table et ajoutez un tableau d'entiers listid de colonne ;
Changez le nom de la table et ajoutez l'identifiant de liste de colonne [] ;
Ne fonctionne pas
Comme mentionné dans les commentaires, les tableaux ne sont pas des types. Vous pouvez choisir d'utiliser une table séparée pour contenir les éléments du tableau et leur faire disposer d'une clé étrangère qui fait référence à la table d'origine, ou analyser le tableau dans une chaîne à chaque fois et le stocker sous forme de texte, en fonction de vos besoins.
CREATE TABLE orders (
id INT NOT NULL PRIMARY KEY,
description TEXT,
reference TEXT
-- This is where you'd want to add your list of order lines
);
-- Instead, we'll create an orderline table referring back to the orders
CREATE TABLE orderlines (
id INT NOT NULL PRIMARY KEY,
description TEXT,
order_id INT REFERENCES orders(id)
);
Vous pouvez maintenant placer les valeurs du tableau (je suppose pour l'instant les lignes de commande) dans leur propre tableau séparé. Pour les interroger, vous pouvez faire ceci
SELECT * FROM orders
LEFT JOIN orderlines ON orderlines.order_id = orders.id;
Vous pouvez utiliser des sous-requêtes pour être suffisamment intelligent pour renvoyer un tableau, notamment dans votre application.
Comme mentionné dans les commentaires, les tableaux ne sont pas des types. Vous pouvez choisir d'utiliser une table séparée pour contenir les éléments du tableau et leur faire disposer d'une clé étrangère qui fait référence à la table d'origine, ou analyser le tableau dans une chaîne à chaque fois et le stocker sous forme de texte, en fonction de vos besoins.
Vous pouvez maintenant placer les valeurs du tableau (je suppose pour l'instant les lignes de commande) dans leur propre tableau séparé. Pour les interroger, vous pouvez faire ceci
Vous pouvez utiliser des sous-requêtes pour être suffisamment intelligent pour renvoyer un tableau, notamment dans votre application.