J'attaque des tables DB2 depuis ODBC avec Access. Avec=20
Access 97, aucun probl=E8me mais depuis que je suis pass=E9 en=20
Access 2000 toutes les tables contenants des colonnes de=20
type d=E9cimal ( qui =E9taient vues avant comme des r=E9el long)=20
sont bien vues maintenant comme des d=E9cimal ( ex Decimal
(5,3)) mais j'ai une erreur =E0 l'ouverture de la table=20
comme quoi la precision de la colonne d=E9cimale est trop=20
petite pour les donn=E9es contenues...et tout cela ,c'est un=20
comble en migrant de version. Le plus "marrant", si ma=20
base 2000, je l'a convertie en 97, j'ai de nouveau acc=E8s=20
aux tables !!!
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
Benoit Compoint [MS]
Bonjour,
L'erreur que vous rencontrez est probablement causée par un bug dans le driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur votre disque dur et de l'ouvrir avec le bloc-notes de Windows (Notepad.exe). Vous trouverez probablement dans ce fichier une entrée PATCH2 (par exemple PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous : PATCH2
Si elle existe déjà (par exemple par exemple PATCH2=1), ajoutez une virgule et la valeur 15 (par exemple PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres régioanaux de Windows. En particulier le driver ODBC ne sera plus perturbé par le fait que vous utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en champs de type numérique "Réel", parce que le moteur Jet 3.5 d'Access 97 n'offre aucun type de données correspondant au type Decimal(5,3) de DB2. Il s'agit donc d'une approximation qui peut induire des erreurs d'arrondi quand ces valeurs sont utilisées dans des calculs (y compris des calculs simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise le moteur Microsoft Jet 4.0. Le moteur Jet 4.0 gère un nouveau type de données numérique "Décimal" qui permet de beaucoup mieux gérer les champs de type DB2 Decimal (5,3) d'une base DB2.
Benoit Compoint
"pascal" wrote in message news:162c01c3df9a$eaa93060$ Bonjour,
J'attaque des tables DB2 depuis ODBC avec Access. Avec Access 97, aucun problème mais depuis que je suis passé en Access 2000 toutes les tables contenants des colonnes de type décimal ( qui étaient vues avant comme des réel long) sont bien vues maintenant comme des décimal ( ex Decimal (5,3)) mais j'ai une erreur à l'ouverture de la table comme quoi la precision de la colonne décimale est trop petite pour les données contenues...et tout cela ,c'est un comble en migrant de version. Le plus "marrant", si ma base 2000, je l'a convertie en 97, j'ai de nouveau accès aux tables !!!
Bonjour,
L'erreur que vous rencontrez est probablement causée par un bug dans le
driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur votre disque dur
et de l'ouvrir avec le bloc-notes de Windows (Notepad.exe).
Vous trouverez probablement dans ce fichier une entrée PATCH2 (par exemple
PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous :
PATCH2
Si elle existe déjà (par exemple par exemple PATCH2=1),
ajoutez une virgule et la valeur 15 (par exemple PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres régioanaux de Windows.
En particulier le driver ODBC ne sera plus perturbé par le fait que vous
utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en champs de type
numérique "Réel", parce que le moteur Jet 3.5 d'Access 97 n'offre aucun type
de données correspondant au type Decimal(5,3) de DB2.
Il s'agit donc d'une approximation qui peut induire des erreurs d'arrondi
quand ces valeurs sont utilisées dans des calculs (y compris des calculs
simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise le moteur Microsoft
Jet 4.0.
Le moteur Jet 4.0 gère un nouveau type de données numérique "Décimal"
qui permet de beaucoup mieux gérer les champs de type DB2 Decimal (5,3)
d'une base DB2.
Benoit Compoint
"pascal" <anonymous@discussions.microsoft.com> wrote in message
news:162c01c3df9a$eaa93060$a401280a@phx.gbl...
Bonjour,
J'attaque des tables DB2 depuis ODBC avec Access. Avec
Access 97, aucun problème mais depuis que je suis passé en
Access 2000 toutes les tables contenants des colonnes de
type décimal ( qui étaient vues avant comme des réel long)
sont bien vues maintenant comme des décimal ( ex Decimal
(5,3)) mais j'ai une erreur à l'ouverture de la table
comme quoi la precision de la colonne décimale est trop
petite pour les données contenues...et tout cela ,c'est un
comble en migrant de version. Le plus "marrant", si ma
base 2000, je l'a convertie en 97, j'ai de nouveau accès
aux tables !!!
L'erreur que vous rencontrez est probablement causée par un bug dans le driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur votre disque dur et de l'ouvrir avec le bloc-notes de Windows (Notepad.exe). Vous trouverez probablement dans ce fichier une entrée PATCH2 (par exemple PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous : PATCH2
Si elle existe déjà (par exemple par exemple PATCH2=1), ajoutez une virgule et la valeur 15 (par exemple PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres régioanaux de Windows. En particulier le driver ODBC ne sera plus perturbé par le fait que vous utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en champs de type numérique "Réel", parce que le moteur Jet 3.5 d'Access 97 n'offre aucun type de données correspondant au type Decimal(5,3) de DB2. Il s'agit donc d'une approximation qui peut induire des erreurs d'arrondi quand ces valeurs sont utilisées dans des calculs (y compris des calculs simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise le moteur Microsoft Jet 4.0. Le moteur Jet 4.0 gère un nouveau type de données numérique "Décimal" qui permet de beaucoup mieux gérer les champs de type DB2 Decimal (5,3) d'une base DB2.
Benoit Compoint
"pascal" wrote in message news:162c01c3df9a$eaa93060$ Bonjour,
J'attaque des tables DB2 depuis ODBC avec Access. Avec Access 97, aucun problème mais depuis que je suis passé en Access 2000 toutes les tables contenants des colonnes de type décimal ( qui étaient vues avant comme des réel long) sont bien vues maintenant comme des décimal ( ex Decimal (5,3)) mais j'ai une erreur à l'ouverture de la table comme quoi la precision de la colonne décimale est trop petite pour les données contenues...et tout cela ,c'est un comble en migrant de version. Le plus "marrant", si ma base 2000, je l'a convertie en 97, j'ai de nouveau accès aux tables !!!
Pascal
Merci pour la réponse je vais tester... Par contre s'il est vrai qu'Access 97 ne permettait pas de creer des champs de type decimal, il les interprétait ( pour mon cas) bien pour la base DB2 liée. Paradoxalement Access 2000 voit trés bien le ddl des tables avec du décimal mais ne sais pas afficher les données et je n'obtiens que des "#erreur". La seule parade pour le moment est de creer une base access 2000, lier toutes les tables DB2 puis la convertir en 97 puis de la réouvrir avec access 2000 et de la reconvertir. A ce moment là, je peux acceder aux tables mais il ne faut surtout pas que je recrée le lien sinon tout est à recommencer...J'espère que c'est bien un pb ODBC et qu'avec cette ligne patch cela suffira... En tout cas encore merci pour votre réponse
-----Message d'origine----- Bonjour,
L'erreur que vous rencontrez est probablement causée par un bug dans le
driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur votre disque dur
et de l'ouvrir avec le bloc-notes de Windows (Notepad.exe).
Vous trouverez probablement dans ce fichier une entrée PATCH2 (par exemple
PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous : PATCH2
Si elle existe déjà (par exemple par exemple PATCH2=1), ajoutez une virgule et la valeur 15 (par exemple PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres régioanaux de Windows.
En particulier le driver ODBC ne sera plus perturbé par le fait que vous
utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en champs de type
numérique "Réel", parce que le moteur Jet 3.5 d'Access 97 n'offre aucun type
de données correspondant au type Decimal(5,3) de DB2. Il s'agit donc d'une approximation qui peut induire des erreurs d'arrondi
quand ces valeurs sont utilisées dans des calculs (y compris des calculs
simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise le moteur Microsoft
Jet 4.0. Le moteur Jet 4.0 gère un nouveau type de données numérique "Décimal"
qui permet de beaucoup mieux gérer les champs de type DB2 Decimal (5,3)
d'une base DB2.
Benoit Compoint
"pascal" wrote in message
news:162c01c3df9a$eaa93060$ Bonjour,
J'attaque des tables DB2 depuis ODBC avec Access. Avec Access 97, aucun problème mais depuis que je suis passé en Access 2000 toutes les tables contenants des colonnes de type décimal ( qui étaient vues avant comme des réel long) sont bien vues maintenant comme des décimal ( ex Decimal (5,3)) mais j'ai une erreur à l'ouverture de la table comme quoi la precision de la colonne décimale est trop petite pour les données contenues...et tout cela ,c'est un comble en migrant de version. Le plus "marrant", si ma base 2000, je l'a convertie en 97, j'ai de nouveau accès aux tables !!!
.
Merci pour la réponse je vais tester...
Par contre s'il est vrai qu'Access 97 ne permettait pas de
creer des champs de type decimal, il les interprétait (
pour mon cas) bien pour la base DB2 liée. Paradoxalement
Access 2000 voit trés bien le ddl des tables avec du
décimal mais ne sais pas afficher les données et je
n'obtiens que des "#erreur". La seule parade pour le
moment est de creer une base access 2000, lier toutes les
tables DB2 puis la convertir en 97 puis de la réouvrir
avec access 2000 et de la reconvertir. A ce moment là, je
peux acceder aux tables mais il ne faut surtout pas que je
recrée le lien sinon tout est à recommencer...J'espère que
c'est bien un pb ODBC et qu'avec cette ligne patch cela
suffira...
En tout cas encore merci pour votre réponse
-----Message d'origine-----
Bonjour,
L'erreur que vous rencontrez est probablement causée par
un bug dans le
driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur
votre disque dur
et de l'ouvrir avec le bloc-notes de Windows
(Notepad.exe).
Vous trouverez probablement dans ce fichier une entrée
PATCH2 (par exemple
PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous :
PATCH2=15
Si elle existe déjà (par exemple par exemple PATCH2=1),
ajoutez une virgule et la valeur 15 (par exemple
PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres
régioanaux de Windows.
En particulier le driver ODBC ne sera plus perturbé par
le fait que vous
utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en
champs de type
numérique "Réel", parce que le moteur Jet 3.5 d'Access 97
n'offre aucun type
de données correspondant au type Decimal(5,3) de DB2.
Il s'agit donc d'une approximation qui peut induire des
erreurs d'arrondi
quand ces valeurs sont utilisées dans des calculs (y
compris des calculs
simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise
le moteur Microsoft
Jet 4.0.
Le moteur Jet 4.0 gère un nouveau type de données
numérique "Décimal"
qui permet de beaucoup mieux gérer les champs de type DB2
Decimal (5,3)
d'une base DB2.
Benoit Compoint
"pascal" <anonymous@discussions.microsoft.com> wrote in
message
J'attaque des tables DB2 depuis ODBC avec Access. Avec
Access 97, aucun problème mais depuis que je suis passé en
Access 2000 toutes les tables contenants des colonnes de
type décimal ( qui étaient vues avant comme des réel long)
sont bien vues maintenant comme des décimal ( ex Decimal
(5,3)) mais j'ai une erreur à l'ouverture de la table
comme quoi la precision de la colonne décimale est trop
petite pour les données contenues...et tout cela ,c'est un
comble en migrant de version. Le plus "marrant", si ma
base 2000, je l'a convertie en 97, j'ai de nouveau accès
aux tables !!!
Merci pour la réponse je vais tester... Par contre s'il est vrai qu'Access 97 ne permettait pas de creer des champs de type decimal, il les interprétait ( pour mon cas) bien pour la base DB2 liée. Paradoxalement Access 2000 voit trés bien le ddl des tables avec du décimal mais ne sais pas afficher les données et je n'obtiens que des "#erreur". La seule parade pour le moment est de creer une base access 2000, lier toutes les tables DB2 puis la convertir en 97 puis de la réouvrir avec access 2000 et de la reconvertir. A ce moment là, je peux acceder aux tables mais il ne faut surtout pas que je recrée le lien sinon tout est à recommencer...J'espère que c'est bien un pb ODBC et qu'avec cette ligne patch cela suffira... En tout cas encore merci pour votre réponse
-----Message d'origine----- Bonjour,
L'erreur que vous rencontrez est probablement causée par un bug dans le
driver ODBC que vous utilisez pour accéder aux bases DB2.
Je vous conseille de rechercher le fichier DB2CLI.INI sur votre disque dur
et de l'ouvrir avec le bloc-notes de Windows (Notepad.exe).
Vous trouverez probablement dans ce fichier une entrée PATCH2 (par exemple
PATCH2=1).
Si elle n'existe pas, créez la comme ci-dessous : PATCH2
Si elle existe déjà (par exemple par exemple PATCH2=1), ajoutez une virgule et la valeur 15 (par exemple PATCH2=1,15).
Cela forcera le driver ODBC à ignorer les paramètres régioanaux de Windows.
En particulier le driver ODBC ne sera plus perturbé par le fait que vous
utilisez la virgule comme séparateur décimal.
Access 97 convertit les champs de type Decimal sur DB2 en champs de type
numérique "Réel", parce que le moteur Jet 3.5 d'Access 97 n'offre aucun type
de données correspondant au type Decimal(5,3) de DB2. Il s'agit donc d'une approximation qui peut induire des erreurs d'arrondi
quand ces valeurs sont utilisées dans des calculs (y compris des calculs
simples comme une somme).
Access 2000 apporte une amélioration parce qu'il utilise le moteur Microsoft
Jet 4.0. Le moteur Jet 4.0 gère un nouveau type de données numérique "Décimal"
qui permet de beaucoup mieux gérer les champs de type DB2 Decimal (5,3)
d'une base DB2.
Benoit Compoint
"pascal" wrote in message
news:162c01c3df9a$eaa93060$ Bonjour,
J'attaque des tables DB2 depuis ODBC avec Access. Avec Access 97, aucun problème mais depuis que je suis passé en Access 2000 toutes les tables contenants des colonnes de type décimal ( qui étaient vues avant comme des réel long) sont bien vues maintenant comme des décimal ( ex Decimal (5,3)) mais j'ai une erreur à l'ouverture de la table comme quoi la precision de la colonne décimale est trop petite pour les données contenues...et tout cela ,c'est un comble en migrant de version. Le plus "marrant", si ma base 2000, je l'a convertie en 97, j'ai de nouveau accès aux tables !!!