Requete sql
yassine
-
BadGuitarist Messages postés 373 Statut Membre -
BadGuitarist Messages postés 373 Statut Membre -
Bonjour,
j'ai une base de donnée et je travaille avec jdbc ma question c'est j'ai une table vide qui a des attributs qui sont etrangers tous dune autre table ce que je vx c'est pouvoir inserer dans cette table ds lun des attributs lancienne valeurs kiest la table mere en additionnant une valeurs x svp comment faire et merci
j'ai une base de donnée et je travaille avec jdbc ma question c'est j'ai une table vide qui a des attributs qui sont etrangers tous dune autre table ce que je vx c'est pouvoir inserer dans cette table ds lun des attributs lancienne valeurs kiest la table mere en additionnant une valeurs x svp comment faire et merci
A voir également:
- Requete sql
- Logiciel sql - Télécharger - Bases de données
- Requête sql pour afficher uniquement les fleurs dont le prix est strictement inférieur à 10 euros - Forum calculatrices
- Sql (+) - Forum Programmation
- Cherche des haricot vendez les moi ✓ - Forum DS
- Sql lister les tables ✓ - Forum Programmation
3 réponses
merci pour ta reponse mais je c comment etablir la connexion ce ke je vx c la commade sql pour faire la requete via java oui le sgbd c oracle pour information et merci pour ton aide
merci
mais le probleme c ke je vx faire laddition d'un attribut avec une valueur externe ke je v inserer a la main avec lattribut de lautre table
par exemple pour bien texpliquer jai une table emp (employer)ki as parmi ces attribut sal(salaire) et la table je ne c pa ins(insertion )ki as aussi lattribut sal et elle est vide et on veut inserer dans la table ins des valeurs ainsi que des sal mais les sal vont etre additionnee avec une autre valeur x externe
jespere ke tu as bien compris mon probleme et merci
mais le probleme c ke je vx faire laddition d'un attribut avec une valueur externe ke je v inserer a la main avec lattribut de lautre table
par exemple pour bien texpliquer jai une table emp (employer)ki as parmi ces attribut sal(salaire) et la table je ne c pa ins(insertion )ki as aussi lattribut sal et elle est vide et on veut inserer dans la table ins des valeurs ainsi que des sal mais les sal vont etre additionnee avec une autre valeur x externe
jespere ke tu as bien compris mon probleme et merci
1000 excuses mais j'ai du mal à comprendre le langage SMS ... pourtant je fais des efforts : il serait tellement plus simple de donner le nom de tes 2 tables avec la liste des attributs qui nous sont utilies.
Tu as donc :
la table "pleine" : emp(nom, salaire)
la table vide : ins(nom, val)
et tu veux mettre dans la table ins tous les enregistrements de la table emp en affectant à val la valeur de salaire+une quantité saisie de manière interactive.
Est-ce que cela peut t'aider :
...
Tu as donc :
la table "pleine" : emp(nom, salaire)
la table vide : ins(nom, val)
et tu veux mettre dans la table ins tous les enregistrements de la table emp en affectant à val la valeur de salaire+une quantité saisie de manière interactive.
Est-ce que cela peut t'aider :
public boolean ajoutIns(String c, int v)
{
InitialContext context = null;
DataSource dataSource = null;
Connection connexion = null;
Statement statement = null;
ResultSet resultSet = null;
int salaireEmp = 0;
int salaireIns = 0;
boolean etatFct = true;
// Identification de la source de données
try
{
context = new InitialContext();
dataSource = (DataSource) context.lookup("MaBDDS");
// Identification de la connexion à la source de données
try
{
connexion = dataSource.getConnection();
connexion.setAutoCommit(false);
statement = connexion.createStatement();
resultSet = statement.executeQuery( "SELECT valeur "
+ " FROM emp "
+ " WHERE nom ='"+c+"' "
);
resultSet.next();
salaireEmp=resultSet.getInt(1);
salaireIns=salaireEmp+v;
statement.executeUpdate("INSERT INTO ins (nom, "
+ "val "
+ ") VALUES "
+ "( '"+c+"', "
+ "'"+salaireIns+"' "
+ ") "
);
connexion.commit();
}
catch (SQLException e2)
{
etatFct=false;
System.err.println(e2.getMessage());
try { connexion.rollback(); } catch(SQLException e3) { System.err.println(e3.getMessage()); }
}
finally
{
if(resultSet !=null) {try{ resultSet.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(statement !=null) {try{ statement.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(connexion !=null) {try{ connexion.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(context !=null) {try{ context.close(); } catch(NamingException e) { e.printStackTrace(); } }
if(dataSource!=null) dataSource=null;
}
}
catch (NamingException e1)
{
etatFct=false;
System.err.println(e1.getMessage());
}
finally
{
if(resultSet !=null) {try{ resultSet.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(statement !=null) {try{ statement.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(connexion !=null) {try{ connexion.close(); } catch(SQLException e) { e.printStackTrace(); } }
if(context !=null) {try{ context.close(); } catch(NamingException e) { e.printStackTrace(); } }
if(dataSource!=null) dataSource=null;
}
return etatFct;
}
...
Si j'ai bien compris, c'est à quelque chose près cela :
<gras> INSERT INTO table_vide(colonne1_tab_vide, colonne2_tab_vide, ... ) SELECT colonne1_table_pleine, colonne2_table_pleine FROM table_pleine; <gras>Bien sûr, dans l'ordre SELECT, rien ne t'empêche de faire des sommes et mettre une clause WHERE.
A+