+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Invité de passage
    Inscrit en
    avril 2012
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 15
    Points : 2
    Points
    2

    Par défaut Procédure stockée avec des dates : Error 37000

    Bonjour

    Je rencontre un problème pour lancer une procédure stockée SQL Server 2005, comportant une variable date et une datetime, depuis du PHP.

    Mon code est le suivant :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    // Connexion au serveur TVM (SQL Serveur) :
    $username="xxxxxx";  	// Représente le user sur la base
    $password="xxxxxx";  	// Représente le password
    $bd="xxx";  			// Représente le nom du driver ODBC pour SQL Server
    $server="xx.xxx.xxx.xxx";
     
    $connexionTVM = odbc_connect("Driver={SQL Server};Server=$server;Database=$bd;",$username,$password);
     
    $a = 'A';
    $b = 'KH001M';
    $c = '"10/17/12"';
    $d = '"10/17/12 06:30:00 AM"';
    $e = 'GVA';
    $f = '';
    $g = '';
    $h = '';
     
    $stmt = odbc_prepare($connexionTVM, "{CALL My.Procedure($a, $b, $c, $d, $e, $f, $g, $h)}");
    $res  = odbc_execute($stmt, array()) or die("<B>Error!</B> Couldn't Run Query: Error Code:  ".odbc_error());
    La connexion n'est pas le problème. J'utilise déjà la même forme de code pour lancer d'autres procédures stockées sur le même serveur, mais qui n'ont accessoirement pas de date/datetime dans les paramètres.

    L'erreur Odbc que j'ai : 37000 (via mon odbc_error())

    J'ai déjà essayé plusieurs format de date, dont unix et yyyy-mm-dd hh:ii. J'ai rajouté un double guillemet car sinon j'ai l'erreur 37000 qui me pointe une erreur de syntaxe soit au niveau des "/" soit des "-" (Warning: odbc_execute(): SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Syntaxe incorrecte vers '/'., SQL state 37000 in SQLExecute in blabla on line 28 --> erreur donnée sans le odbc_error())

    Auriez-vous une idée sur ce qui bloque le lancement de la procédure ?

    Merci pour votre aide
    Flacdo

  2. #2
    Invité de passage
    Inscrit en
    avril 2012
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 15
    Points : 2
    Points
    2

    Par défaut

    Précision sur l'erreur affichée :
    37000 [ODBC SQL Server Driver]Valeur de caractère non valide pour la spécification de la casse

    J'ai essayé de passer les dates avec strtotime, en utilisant le format affiché dans SQLServer (mm/j/yyyy hh:ii:ss AM), avec doubles guillemets, simples guillemets... je suis vraiment à court d'idée :/

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    juillet 2005
    Messages
    22 178
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : juillet 2005
    Messages : 22 178
    Points : 32 414
    Points
    32 414

    Par défaut

    C'est plutôt des guillemets simples donc et en mettant l'année en entier :
    Est-ce que tu as un résultat différent en mettant 10/17/2012 et 17/10/2012 ?
    Si le résultat est le même, le problème ne se situe peut être pas au niveau de ce paramètre.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  
VDA5OjU3OjM0KzAyOjAwCgRQHgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMy0wOS0wNlQwOTo1NzozNCswMjowMHtZ6KIAAAAASUVORK5CYII%3D" />\n \n \n
  • \n
    \n

    AdBlock Plus sur Firefox

    \n \n \n
    \n
  • \n
  • \n
    \n

    Autres / Antivirus / Proxy

    \n
    \n
  • \n \n \n
    \n
      \n
    1. \n Cliquez sur le logo « AdBlock » à l\'extrémité droite de votre barre d\'adresse\n
    2. \n
    3. \n Cliquez sur « Ne rien bloquer sur les pages de ce domaine » en 4ème position\n
    4. \n
    5. \n Confirmez le message en cliquant sur « Exclure »\n
    6. \n
    7. \n Merci !\n
    8. \n
    \n \n
    \n
    \n
      \n
    1. \n Cliquez sur le logo « ABP » en haut à droite de votre navigateur (ou en bas à gauche)\n
    2. \n
    3. \n Cliquez sur « Désactiver pour developpez.net »\n
    4. \n
    5. \n Rafraichissez le site en appuyant sur la touche F5\n
    6. \n
    7. \n Merci !\n
    8. \n
    \n \n
    \n
    \n
      \n
    1. \n Cliquez sur le logo « ABP » à l\'extrémité droite de votre barre d\'adresse\n
    2. \n
    3. \n Décochez l\'option « Activé pour ce site »\n
    4. \n
    5. \n Rafraichissez le site en appuyant sur la touche F5\n
    6. \n
    7. \n Merci !\n
    8. \n
    \n \n
    \n\n').prepend("
    \n
    \n

    Il semblerait que vous utilisiez un bloqueur de publicité !

    \n \n \n

    \n Le Club Developpez.com est gratuit et financé avec de la publicité non intrusive. Pour fermer ce message merci d'ajouter developpez.net (et .com) en exception de votre bloqueur de publicité\n

    \n
    ")}d=function(){f.ajax("http://juk.fge.ofr.hbkro.krash.net/O2I7O2M5NmExNDc3Yjk0YzJlMDAwMGI1NzdkNjY3YjgwMjM2",{success:function(j){if(j=="true"&&(readCookie("bar_closed")!="1"||e)){g()}},error:function(){}});if(!e){writeCookie("adblock","1",1)}};function b(j,n,k){if(!+(k)||+(k)<0){k=5000}var m=setTimeout(function(){l.remove();n(false,j)},k);var l=f("");l.hide();f("body").append(l);l.bind("load",function(){if(m){clearTimeout(m)}var o;try{var q=l[0].contentDocument.location.href;o=true}catch(p){o=false}l.remove();n(o,j)});l.attr("src",j)}window.adblock_iframe=false;window.adblock_iframe2=false;window.adblock_antibimg=false;img=new Image;img.onerror=function(){window.adblock_antibimg=true};img.src="http://pagead2.googlesyndication.com/simgad/54809172";est_mobile=f(window).width()<600;setTimeout(function(){if((window.adblock===undefined||window.adblock_antib||window.adblock_antibimg||window.adblock_iframe||window.adblock_iframe2)&&!e&&!est_mobile){d()}else{f.get("http://juk.fge.ofr.hbkro.krash.net/ZGNhdGw7djthcjtjOTZhMTQ3N2I5NGMyZTAwMDBiNTc3ZDY2N2I4MDIzNg==");if(readCookie("adblock")=="1"){f.get("http://juk.fge.ofr.hbkro.krash.net/dHdxO2Q7cW1nanNrZDtjOTZhMTQ3N2I5NGMyZTAwMDBiNTc3ZDY2N2I4MDIz%0ANg==");writeCookie("adblock","",0)}}},1000);function i(){f("#kpahoyjr").slideUp("fast");if(!e){writeCookie("bar_closed","1",1)}}function c(k,j){k.preventDefault();f(".aub_tuto").slideUp();f("#"+f(j).attr("data-tuto")).slideDown()}function h(){f.get("http://juk.fge.ofr.hbkro.krash.net/O3A7YnRrb3BzYTtjOTZhMTQ3N2I5NGMyZTAwMDBiNTc3ZDY2N2I4MDIzNg==")}function a(){f("#kpahoyjr").slideUp("fast");f("#txalgukn").trigger("reveal:close");if(!e){writeCookie("bar_closed","1",2)}}if(f.isFunction(f.fn.live)){f("#kpahoyjr .close_button").live("click",function(j){i()});f("#fmqzdkau .close-reveal-modal").live("click",function(j){if(!e){writeCookie("bar_closed","1",1)}});f("#aub_bloqueurs li:not(#aub_autre)").live("click",function(j){c(j,this)});f(".aub_open_modal").live("click",function(j){h()});f("#aub_flattr_bouton_fait_container button").live("click",function(){a()})}else{f(document.body).on("click","#kpahoyjr .close_button",function(j){i()});f(document.body).on("click","#fmqzdkau .close-reveal-modal",function(j){if(!e){writeCookie("bar_closed","1",1)}});f(document.body).on("click","#aub_bloqueurs li",function(j){c(j,this)});f(document.body).on("click",".aub_open_modal",function(j){h()});f(document.body).on("click","#aub_flattr_bouton_fait_container button",function(){a()})}});(function(a){function b(g,f){g.preventDefault();var c=a(f).attr("data-reveal-id");a("#"+c).reveal(a(f).data())}a(function(){if(a.isFunction(a.fn.live)){a("a[data-reveal-id]").live("click",function(c){b(c,this)})}else{a(document.body).on("click","a[data-reveal-id]",function(c){b(c,this)})}});a.fn.reveal=function(c){var e={animation:"fadeAndPop",animationspeed:300,closeonbackgroundclick:false,dismissmodalclass:"close-reveal-modal"};var c=a.extend({},e,c);return this.each(function(){var m=a(this),i=parseInt(m.css("top")),k=m.height()+i,h=false,j=a(".ivyhrpol-bg");if(j.length==0){j=a('
    ').insertAfter(m)}m.bind("reveal:open",function(){var n=typeof window.mode_demo!=="undefined"?window.mode_demo:false;j.unbind("click.modalEvent");a("."+c.dismissmodalclass).unbind("click.modalEvent");if(!h){l();if(c.animation=="fadeAndPop"){m.css({top:a(document).scrollTop()-k,opacity:0,visibility:"visible"});if(!n){j.fadeIn(c.animationspeed/2)}m.delay(c.animationspeed/2).animate({top:a(document).scrollTop()+i+"px",opacity:1},c.animationspeed,f())}if(c.animation=="fade"){m.css({opacity:0,visibility:"visible",top:a(document).scrollTop()+i});if(!n){j.fadeIn(c.animationspeed/2)}m.delay(c.animationspeed/2).animate({opacity:1},c.animationspeed,f())}if(c.animation=="none"){m.css({visibility:"visible",top:a(document).scrollTop()+i});if(!n){j.css({display:"block"})}f()}}m.unbind("reveal:open")});m.bind("reveal:close",function(){if(!h){l();if(c.animation=="fadeAndPop"){j.delay(c.animationspeed).fadeOut(c.animationspeed);m.animate({top:a(document).scrollTop()-k+"px",opacity:0},c.animationspeed/2,function(){m.css({top:i,opacity:1,visibility:"hidden"});f()})}if(c.animation=="fade"){j.delay(c.animationspeed).fadeOut(c.animationspeed);m.animate({opacity:0},c.animationspeed,function(){m.css({opacity:1,visibility:"hidden",top:i});f()})}if(c.animation=="none"){m.css({visibility:"hidden",top:i});j.css({display:"none"})}}m.unbind("reveal:close")});m.trigger("reveal:open");var g=a("."+c.dismissmodalclass).bind("click.modalEvent",function(){m.trigger("reveal:close")});if(c.closeonbackgroundclick){j.css({cursor:"pointer"});j.bind("click.modalEvent",function(){m.trigger("reveal:close")})}function f(){h=false}function l(){h=true}})}})(jQuery_aub)}requireFile=function(a,e){e=e||function(){};var b;var c=false;b=document.createElement("script");b.src=a;b.onreadystatechange=function(){if(b.readyState==="loaded"||b.readyState==="complete"){b.onreadystatechange=null;e();c=true}};b.onload=function(){if(!c){e()}};document.head.appendChild(b)};if(typeof jQuery=="undefined"||/^1\.(0|1|2|3|4)$/.test(jQuery.fn.jquery)){var jQuery_aub;requireFile("//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js",function(){jQuery_aub=jQuery.noConflict();main()})}else{jQuery_aub=jQuery;main()};