Erreur requete sql
isa.dama
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
à l'exécussion de mon code je recois le message suivant
les pointages de la table Pointage ne sont pas récupérés !
<souligne>No database selected
pourtant je suis bien connecté aux deuxbases de données
Et la requete fonctionne bien sur access
Voici une partie de mon code
à l'exécussion de mon code je recois le message suivant
les pointages de la table Pointage ne sont pas récupérés !
INSERT INTO POINTAGEN SELECT * FROM ( SELECT p.Matricule,NbSaisie, p.TypePointage, p.CodeAnalytique, DatePointage, s.Etabl FROM FORAGESTECHNIC.mdb.Pointage p, PayeFORAGESTECHNIC.mdb.Salarie s, PayeFORAGESTECHNIC.mdb.Etablissement e WHERE p.TypePointage IN ('J','R','L') AND s.Matricule=p.Matricule AND p.DatePointage>=e.Z_debpointage AND p.DatePointage<=e.Z_Finpointage AND p.NbSaisie>'0' group by p.CodeAnalytique, p.Matricule,NbSaisie,DatePointage,s.Etabl,p.TypePointage ) AS PN
<souligne>No database selected
pourtant je suis bien connecté aux deuxbases de données
Et la requete fonctionne bien sur access
Voici une partie de mon code
<title></title> <?php session_start(); /*$conn=odbc_connect('ODBC_FORAGESTECHNIC','Thalia','admin321***'); $file = "C:\THALIA\Paye82\TEMP\FORAGESTECHNIC/PassComptable.txt"; $f = fopen($file, 'w');*/ $conn_temps=odbc_connect('ODBC_FORAGESTECHNIC','root','') or die ("Impossible de se connecter a la base temps "); if (!$conn_temps) {exit("Echec de connection : " . $conn_temps);} $conn_paye=odbc_connect('ODBC_PayeFORAGESTECHNIC','','') or die ("Impossible de se connecter a la base paye "); if (!$conn_paye) {exit("Echec de connection : " . $conn_paye);} $req_pointagen="DELETE FROM POINTAGEN"; $tble_pointagen=("INSERT INTO POINTAGEN SELECT * FROM ( SELECT p.Matricule,NbSaisie, p.TypePointage, p.CodeAnalytique, DatePointage, s.Etabl FROM FORAGESTECHNIC.mdb.Pointage p, PayeFORAGESTECHNIC.mdb.Salarie s, PayeFORAGESTECHNIC.mdb.Etablissement e WHERE p.TypePointage IN ('J','R','L') AND s.Matricule=p.Matricule AND p.DatePointage>=e.Z_debpointage AND p.DatePointage<=e.Z_Finpointage AND p.NbSaisie>'0' group by p.CodeAnalytique, p.Matricule,NbSaisie,DatePointage,s.Etabl,p.TypePointage ) AS PN"); /*Affichage du champs nbsaisie de la table POINTAGEN*/ $results = mysql_query($tble_pointagen) or die ('les pointages de la table Pointage ne sont pas récupérés !' .$tble_pointagen. '<br/>' .mysql_error()); while ($row = mysql_fetch_assoc($results)) { NbSaisie($row); } $req_passnbjour="DELETE FROM PASSNBJOUR"; $tble_passnbjour=("INSERT INTO PASSNBJOUR SELECT * FROM ( SELECT p.Matricule, COUNT(p.NbSaisie) as nbjour, p.CodeAnalytique, p.Etabl FROM FORAGESTECHNIC.mdb.POINTAGEN p, PayeFORAGESTECHNIC.mdb.Etablissement e WHERE p.Etabl=e.Code AND p.DatePointage>=e.Z_debpointage AND p.DatePointage<=e.Z_Finpointage group by p.CodeAnalytique, p.Matricule, p.Etabl ) AS PNB"); if (!$tble_passnbjour) {exit("ECHEQUE DE CALCUL DES NOMBRES DE JOUR : " . $tble_passnbjour);} $req_salariebv="DELETE FROM SALARIEBV"; $tble_salariebv=("INSERT INTO SALARIEBV SELECT * FROM ( SELECT p.Etabl,p.Matricule, '0' AS NumAxe,'1111' AS Rubr, p.CodeAnalytique, CAST(p.NbJour AS nvarchar(3)) AS ExprP,' ' AS ExprD,p.NbJour AS P, '0' AS PSalarie,'0' AS PCharges, '0' AS PGlobale, '0' AS D, '0' AS DSalarie, '0' AS DCharges, p.NbJour AS R,'0' AS RSalarie,'0' AS RCharges,'0' AS RGain,'0' AS RPerte, ' ' AS Lib, CONVERT(smallint,(CONVERT(varchar(1),'0'))) AS Editer FROM PASSNBJOUR p ) AS SBV"); /*Insertion de la contreinte thalia nommée ExprP pour permettre de changer le type du champs ExprP de Ntext en nVarchar */ /*$req_contreinteExprP=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNICSalarieBulletinValeur DROP CONSTRAINT ExprP");*/ /*Insertion de la contreinte thalia nommée ExprP pour permettre de changer le type du champs ExprP de Ntext en nVarchar */ /*$req_contreinteExprD=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNIC.SalarieBulletinValeur DROP CONSTRAINT ExprD");*/ /*Changement du type du champs ExprP de Ntext en nVarchar*/ /*$req_formaExprP=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNIC.SalarieBulletinValeur ALTER COLUMN ExprP nVARCHAR(30)");*/ /*Changement du type du champs ExprD de Ntext en nVarchar*/ /*$req_formaExprD=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNIC.SalarieBulletinValeur ALTER COLUMN ExprD nVARCHAR(30)");*/ /*Vidage de la table PASSERELLE*/ $req_vidage="DELETE FROM Passerelle"; /*Insertion des rubriques 1111 dans la table PASSERLLE*/ $req_insert="INSERT INTO PayeFORAGESTECHNIC.mdb.Passerelle SELECT * FROM FORAGESTECHNIC.mdb.SALARIEBV"; /*Insertion des données de la table SalarieBulletinValeur dans la table PASSERELLE*/ $req_insertSalValP="INSERT INTO PayeFORAGESTECHNIC.mdb.Passerelle SELECT * FROM PayeFORAGESTECHNIC.mdb.SalarieBulletinValeur"; if(($req_vidage=($req_vidage))&&($req_insert=($req_insert))&&($insertSalValP=($req_insertSalValP))) { ?> <script type="text/javascript"> alert('Nombre de jour import\é avec succ\ès!'); document.location.href = 'index.php?page=page_passerelle_traitement'; </script> <?php }else{ ?> <script type="text/javascript"> alert('Echec import!!!'); document.location.href = 'index.php?page=page_affectation_etablissement'; </script> <?php } /*Remise en place de la contrainte ExprP pour le fonctionnement de Thalia paye*/ /*$req_RcontreinteExprP=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNIC.SalarieBulletinValeur ADD CONSTRAINT ExprP DEFAULT ('') FOR [ExprP]");*/ /*Remise en place de la contrainte ExprD pour le fonctionnement de Thalia paye*/ /*$req_RcontreinteExprD=odbc_exec($conn,"ALTER TABLE PayeFORAGESTECHNIC.SalarieBulletinValeur ADD CONSTRAINT ExprD DEFAULT ('') FOR [ExprD]");*/ ?>
EDIT : AJout des balises de code ! Merci d'y penser la prochaine fois...
A voir également:
- Erreur requete sql
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- J'aime par erreur facebook notification - Forum Facebook
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- Iptv erreur de lecture - Forum TV & Vidéo
1 réponse
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, je me demande si odbc supporte "insert into select". peut-être faut-il faire le select, et puis un insert pour chaque enregistrement.