PDA

Voir la version complète : Problème requête SQL Server



dozue144
03/08/2012, 10h49
Bonjour,
j'espère être au bon endroit :) ...

Je suis en version 1.8.15 et j'ai installé le pilote odbc ...

Je teste la connexion avec la commande isql et j'arrive à afficher le contenu de ma table (serveur SQL server 2012 Express).

La commande odbc show me renvoie :

ODBC DSN Settings
-----------------

Name: Sqlserver
DSN: SQLServer2012
Last connection attempt: 1970-01-01 01:00:00
Pooled: Yes
Limit: 5
Connections in use: 1
- Connection 1: connected

[Aug 3 10:43:58] WARNING[1415]: res_odbc.c:762 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Aug 3 10:43:58] NOTICE[1415]: res_odbc.c:1531 odbc_obj_connect: Connecting Sqlserver
[Aug 3 10:43:58] NOTICE[1415]: res_odbc.c:1563 odbc_obj_connect: res_odbc: Connected to Sqlserver [SQLServer2012]


Par contre dans extension.conf j'essaie d'utiliser une fonction contenue dans func_odbc.conf :

[AUTH]
dsn=SQLServer2012
readsql=SELECT COUNT(*) as NB FROM Person WHERE Ident = '${ARG1}' AND Password = '${ARG2}'


...
exten => 1234,n(retry),Read(Pwd,01,4) ;merci de saisir votre mot de passe
exten => 1234,n,Set(OK=${ODBC_AUTH(${Id},${Pwd})})
exten => 1234,n,GotoIf($[${OK} = 0]?retry)
...

et j'obtiens le message :

-- User entered '9877'
[Aug 3 10:27:05] ERROR[1391]: func_odbc.c:538 acf_odbc_read: Unable to execute query [SELECT COUNT(*) as NB FROM Person WHERE Ident = '1324' AND Password = '9877']
-- Executing [1234@agent:8] Set("SIP/Zoiper_P04-LOIC-0000000b", "OK=") in new stack
[Aug 3 10:27:05] WARNING[1391]: ast_expr2.fl:468 ast_yyerror: ast_yyerror(): syntax error: syntax error, unexpected '=', expecting $end; Input:
= 0
^

Je ne comprends pas ce que j'ai fait de travers (et pourtant il y a sûrement quelque chose !)...

Merci par avance de votre aide ! :-)

therebel23
03/08/2012, 21h02
Salut,
ce que je te conseille, c'est de lancer sur le serveur SQL Server le profiler s'il est disponible sur la version express. Ca te permet de voir si la requete arrive bien jusqu'au serveur ..

dozue144
13/08/2012, 14h26
Le problème n'est pas résolu, mais cela devait provenir du driver odbc pour Slq server (ou de son installation par mes soins :doh:) car j'ai testé sur une base MySql et cela fonctionne très bien ...

Du coup, j'ai laissé de côté la connexion avec MSSqlServer et j'utilise MySql, du moins pour le moment.

Si d'aventure quelqu'un trouvait une (meilleure) explication, je suis preneur ...
(j'aime pas quand la machine gagne !)

Cordialement