Pour la première question :
- Créer une contrainte unique sur les deux colonnes
- Assurez-vous de toujours trier les colonnes. Donc si votre table a les colonnes
a
etb
que de s'assurer quea
est inférieur ou égal àb
Pour la deuxième question :
SELECT
*
FROM
many_to_many_table
WHERE
a = A or b = A