Comment INNER JOIN 4 tables?
J'ai dû créer un carnet d'adresses de l'application de la connexion à une base de données d'une ihm java. Je travaille sur mon bouton de recherche dès maintenant et presque eu mais il ne peux pas comprendre comment vous connecter tous les quatre tableaux. J'ai besoin de faire une recherche par nom de famille et puis je veux qu'elle affiche toutes les informations de cette personne.
Jusqu'à présent c'est ce que j'ai et ça semble fonctionner, mais lorsque j'essaie de JOINTURE INTERNE emailAddresses et phoneNumbers j'obtiens une erreur de syntaxe.
resultSet =
statement.executeQuery( "SELECT * FROM names INNER JOIN addresses ON names.personID = addresses.personID WHERE lastName LIKE '%" + last + "%' ");
resultSet.next();
jTextField1.setText(resultSet.getString("firstName"));
jTextField2.setText(resultSet.getString("lastName"));
jTextField3.setText(resultSet.getString("address1"));
jTextField4.setText(resultSet.getString("address2"));
jTextField5.setText(resultSet.getString("city"));
jTextField6.setText(resultSet.getString("state"));
jTextField7.setText(resultSet.getString("zipcode"));
jTextField8.setText(resultSet.getString("phoneNumber"));
jTextField9.setText(resultSet.getString("emailAddress"));
- Vous devez modifier la question et de fournir des données de l'échantillon et les résultats escomptés. Je doute qu'un
JOIN
est ce que vous voulez vraiment. - Si seulement la jointure de plusieurs tables sont à votre exigence, il existe beaucoup de tutoriels dans google.
Vous devez vous connecter pour publier un commentaire.
Vous aurez besoin d'ajouter des supports et l'utilisation
*
plutôt que%
comme le générique.Je n'ai pas testé, mais cela devrait fonctionner:
Disant qu'elle doit travailler - n'oubliez pas d'échapper l'apostrophe dans un dernier nom.
S'échapper " de l'Accès SQL
+
(vous pouvez en VBA, mais peut se retrouver avec les deux parties étant additionnées plutôt que concaténés).essayer cette Commande SQL, rejoignant quatre tables est le même que l'adhésion à une table ou d'adhésion, le nombre de tables:
SELECT firstName, lastName, address1, address2, city, state, zipcode, phoneNumber, emailAddress
FROM names
INNER JOIN addresses
ON names.personID = addresses.personID
INNER JOIN emailadresses
ON names.personID = emailadresses.PersonID
INNER JOIN PhoneNumbers
ON names.PersonID = PhoneNumbers.PersonID
WHERE lastName LIKE '%parameter%'