Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur
lequel je n'ai, malheureusement, absolument pas la main. Je viens de
m'apercevoir que des requêtes sont exécutées mais que le format de certaines
informations, les dates pour le moment mais peut être d'autres, ne convient
pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la
date est envoyée sous la forme d'une chaîne de caractères avec le format
suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête
passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion
d'un type de données CHAR en type DATETIME a donnée une valeur hors limite
de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas
forcer le langage de la session ou le format de date à utiliser. Ce que
j'aimerais donc faire, c'est dire que la base doit utiliser le langage
us_english ou tel format de date, mais je n'ai trouvé nul part comment
configurer la base ainsi.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur
les options régionales du poste à l'installation et j'ai peur qu'il s'en
serve par la suite pour toutes les bases créées dessus.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
SQLpro [MVP]
David G. a écrit :
Bonjour,
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur lequel je n'ai, malheureusement, absolument pas la main. Je viens de m'apercevoir que des requêtes sont exécutées mais que le format de certaines informations, les dates pour le moment mais peut être d'autres, ne convient pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la date est envoyée sous la forme d'une chaîne de caractères avec le format suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion d'un type de données CHAR en type DATETIME a donnée une valeur hors limite de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas forcer le langage de la session ou le format de date à utiliser. Ce que j'aimerais donc faire, c'est dire que la base doit utiliser le langage us_english ou tel format de date, mais je n'ai trouvé nul part comment configurer la base ainsi.
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur les options régionales du poste à l'installation et j'ai peur qu'il s'en serve par la suite pour toutes les bases créées dessus.
Merci.
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
David G. a écrit :
Bonjour,
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur
lequel je n'ai, malheureusement, absolument pas la main. Je viens de
m'apercevoir que des requêtes sont exécutées mais que le format de certaines
informations, les dates pour le moment mais peut être d'autres, ne convient
pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la
date est envoyée sous la forme d'une chaîne de caractères avec le format
suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête
passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion
d'un type de données CHAR en type DATETIME a donnée une valeur hors limite
de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas
forcer le langage de la session ou le format de date à utiliser. Ce que
j'aimerais donc faire, c'est dire que la base doit utiliser le langage
us_english ou tel format de date, mais je n'ai trouvé nul part comment
configurer la base ainsi.
Le seul format universel portable de date est le format ISO court, c'est
à dire :
AAAAMMJJ
dans ce cas aucun paramétrage n'est nécessaire.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur
les options régionales du poste à l'installation et j'ai peur qu'il s'en
serve par la suite pour toutes les bases créées dessus.
Merci.
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur lequel je n'ai, malheureusement, absolument pas la main. Je viens de m'apercevoir que des requêtes sont exécutées mais que le format de certaines informations, les dates pour le moment mais peut être d'autres, ne convient pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la date est envoyée sous la forme d'une chaîne de caractères avec le format suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion d'un type de données CHAR en type DATETIME a donnée une valeur hors limite de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas forcer le langage de la session ou le format de date à utiliser. Ce que j'aimerais donc faire, c'est dire que la base doit utiliser le langage us_english ou tel format de date, mais je n'ai trouvé nul part comment configurer la base ainsi.
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur les options régionales du poste à l'installation et j'ai peur qu'il s'en serve par la suite pour toutes les bases créées dessus.
Merci.
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
David G.
"SQLpro [MVP]" a écrit dans le message de news:
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je ne peux intervenir à aucun moment sur la requête exécutée pour la modifier, et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base, ou du serveur ?
"SQLpro [MVP]" <brouardf@club-internet.fr> a écrit dans le message de news:
eq6OXY5XGHA.4120@TK2MSFTNGP03.phx.gbl...
Le seul format universel portable de date est le format ISO court, c'est à
dire :
AAAAMMJJ
dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je
ne peux intervenir à aucun moment sur la requête exécutée pour la modifier,
et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du
AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il
prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment
de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base,
ou du serveur ?
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je ne peux intervenir à aucun moment sur la requête exécutée pour la modifier, et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base, ou du serveur ?
Med Bouchenafa
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
-- Bien cordialement Med Bouchenafa "David G." a écrit dans le message de news: %
Bonjour,
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur lequel je n'ai, malheureusement, absolument pas la main. Je viens de m'apercevoir que des requêtes sont exécutées mais que le format de certaines informations, les dates pour le moment mais peut être d'autres, ne convient pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la date est envoyée sous la forme d'une chaîne de caractères avec le format suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion d'un type de données CHAR en type DATETIME a donnée une valeur hors limite de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas forcer le langage de la session ou le format de date à utiliser. Ce que j'aimerais donc faire, c'est dire que la base doit utiliser le langage us_english ou tel format de date, mais je n'ai trouvé nul part comment configurer la base ainsi.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur les options régionales du poste à l'installation et j'ai peur qu'il s'en serve par la suite pour toutes les bases créées dessus.
Merci.
Il n'y a pas une notion de langue par base de données mais par utilisateur
Change la langue utilisée par l'utilisateur de cette requete
En 2005
ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors
automatiquement le format de langue choisie
--
Bien cordialement
Med Bouchenafa
"David G." <spam@dtc.com> a écrit dans le message de news:
%23DqvlA5XGHA.4688@TK2MSFTNGP04.phx.gbl...
Bonjour,
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur
lequel je n'ai, malheureusement, absolument pas la main. Je viens de
m'apercevoir que des requêtes sont exécutées mais que le format de
certaines informations, les dates pour le moment mais peut être d'autres,
ne convient pas au serveur. J'ai réussi à récupérer la requête qui est
exécutée et la date est envoyée sous la forme d'une chaîne de caractères
avec le format suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête
passe sans problème, sinon j'ai le droit à l'erreur suivante : La
conversion d'un type de données CHAR en type DATETIME a donnée une valeur
hors limite de date et d'heure. Comme je n'ai la main à aucun moment, je
ne peux pas forcer le langage de la session ou le format de date à
utiliser. Ce que j'aimerais donc faire, c'est dire que la base doit
utiliser le langage us_english ou tel format de date, mais je n'ai trouvé
nul part comment configurer la base ainsi.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base
sur les options régionales du poste à l'installation et j'ai peur qu'il
s'en serve par la suite pour toutes les bases créées dessus.
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
-- Bien cordialement Med Bouchenafa "David G." a écrit dans le message de news: %
Bonjour,
Je suis confronté à un problème avec Sql Server 2005. J'ai un système sur lequel je n'ai, malheureusement, absolument pas la main. Je viens de m'apercevoir que des requêtes sont exécutées mais que le format de certaines informations, les dates pour le moment mais peut être d'autres, ne convient pas au serveur. J'ai réussi à récupérer la requête qui est exécutée et la date est envoyée sous la forme d'une chaîne de caractères avec le format suivant : YYYY-MM-DD.
Si je fais un Set Language us_english ou un Set Dateformat ymd, la requête passe sans problème, sinon j'ai le droit à l'erreur suivante : La conversion d'un type de données CHAR en type DATETIME a donnée une valeur hors limite de date et d'heure. Comme je n'ai la main à aucun moment, je ne peux pas forcer le langage de la session ou le format de date à utiliser. Ce que j'aimerais donc faire, c'est dire que la base doit utiliser le langage us_english ou tel format de date, mais je n'ai trouvé nul part comment configurer la base ainsi.
Est-ce possible ? Si oui, comment ? Car à priori Sql Server 2005 se base sur les options régionales du poste à l'installation et j'ai peur qu'il s'en serve par la suite pour toutes les bases créées dessus.
Merci.
SQLpro [MVP]
David G. a écrit :
"SQLpro [MVP]" a écrit dans le message de news:
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je ne peux intervenir à aucun moment sur la requête exécutée pour la modifier, et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base, ou du serveur ?
absolument pas.
La seule possibilité est de rajouter au début de la session un SET DATEFORMAT YMD.
C'est un défaut de conception de l'application concernant la base de données.
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
David G. a écrit :
"SQLpro [MVP]" <brouardf@club-internet.fr> a écrit dans le message de news:
eq6OXY5XGHA.4120@TK2MSFTNGP03.phx.gbl...
Le seul format universel portable de date est le format ISO court, c'est à
dire :
AAAAMMJJ
dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je
ne peux intervenir à aucun moment sur la requête exécutée pour la modifier,
et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du
AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il
prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment
de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base,
ou du serveur ?
absolument pas.
La seule possibilité est de rajouter au début de la session un SET
DATEFORMAT YMD.
C'est un défaut de conception de l'application concernant la base de
données.
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Le seul format universel portable de date est le format ISO court, c'est à dire : AAAAMMJJ dans ce cas aucun paramétrage n'est nécessaire.
Malheureusement dans le contexte où je me trouve je n'ai aucune liberté, je ne peux intervenir à aucun moment sur la requête exécutée pour la modifier, et la seule solution consiste à ce que mon serveur 2005 puisse comprendre du AAAA-MM-JJ. Il faudrait que je puisse changer le format des dates qu'il prend en charge (DBCC USEROPTIONS indique un format en DMY) indépendemment de toute session. Y-a-t-il moyen de modifier ce format au niveau de la base, ou du serveur ?
absolument pas.
La seule possibilité est de rajouter au début de la session un SET DATEFORMAT YMD.
C'est un défaut de conception de l'application concernant la base de données.
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
David G.
"Med Bouchenafa" a écrit dans le message de news:
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)
"Med Bouchenafa" <com.hotmail@bouchenafa> a écrit dans le message de news:
eP9xMw5XGHA.3808@TK2MSFTNGP04.phx.gbl...
Il n'y a pas une notion de langue par base de données mais par utilisateur
Change la langue utilisée par l'utilisateur de cette requete
En 2005
ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors
automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)
Med Bouchenafa
Désolé, fallait bien lire cet utilisateur et non "cette utilisateur" Je pensais probablement à une utilisatrice....
-- Bien cordialement Med Bouchenafa
"David G." a écrit dans le message de news: %
"Med Bouchenafa" a écrit dans le message de news:
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)
Désolé, fallait bien lire cet utilisateur et non "cette utilisateur"
Je pensais probablement à une utilisatrice....
--
Bien cordialement
Med Bouchenafa
"David G." <spam@dtc.com> a écrit dans le message de news:
%23lJPs77XGHA.508@TK2MSFTNGP02.phx.gbl...
"Med Bouchenafa" <com.hotmail@bouchenafa> a écrit dans le message de news:
eP9xMw5XGHA.3808@TK2MSFTNGP04.phx.gbl...
Il n'y a pas une notion de langue par base de données mais par
utilisateur
Change la langue utilisée par l'utilisateur de cette requete
En 2005
ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors
automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)
Désolé, fallait bien lire cet utilisateur et non "cette utilisateur" Je pensais probablement à une utilisatrice....
-- Bien cordialement Med Bouchenafa
"David G." a écrit dans le message de news: %
"Med Bouchenafa" a écrit dans le message de news:
Il n'y a pas une notion de langue par base de données mais par utilisateur Change la langue utilisée par l'utilisateur de cette requete En 2005 ALTER LOGIN login_name WITH DEFAULT_LANGUAGE = language
Toutes les requetes utilisées par cette utilisateur utiliseront alors automatiquement le format de langue choisie
Le problème semble être réglé avec cette manipulation. Merci beaucoup :-)