2017-06-19 4 views
-1

J'ai installé Python 3.4 et ibm_db pour se connecter à une base de données DB2; J'ai vu dans l'interpréteur Python que ibm_db 2.0.7 est installé, mais lors de la connexion à une base de données DB2, j'ai reçu le message d'erreur SQL1532N, donc je dois configurer db2dsdriver.cfg et pour cela j'ai obtenu le fichier db2dsdriver.xsd, mais je ne sais pas Sachez ce que je dois changer. Dois-je remplacer toutes les «bases de données» par le nom réel de la base de données dans l'instance DB2 que j'essaie de me connecter? Ou quoi d'autre dois-je changer?Quelles spécifications dois-je faire dans db2dsdriver.cfg pour me connecter à la base de données aDB2? Je reçois erreur SQL1532N

BTW, il n'y a pas db2dsdriver.cfg installé dans mon Windows 10 et concernant certaines informations autour de je pensais qu'il est dynamiquement créé à partir db2dsdriver.xsd qui est dans le sous-répertoire \cfg sous Python34.

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema id="configuration" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" > 
    <xs:element name="parameter"> 
    <xs:complexType> 
     <xs:attribute name="name" type="xs:string" /> 
     <xs:attribute name="value" type="xs:string" /> 
    </xs:complexType> 
    </xs:element> 
    <xs:simpleType name="whitespacesonly"> 
    <xs:restriction base="xs:string"> 
     <xs:pattern value="\s*" /> 
    </xs:restriction> 
    </xs:simpleType> 
    <xs:element name="client"> 
    <xs:complexType> 
    <xs:simpleContent> 
     <xs:extension base="whitespacesonly"> 
     <xs:attribute name="name" type="xs:string" /> 
     <xs:attribute name="hostname" type="xs:string" /> 
     <xs:attribute name="listname" type="xs:string" /> 
     </xs:extension> 
    </xs:simpleContent> 
    </xs:complexType> 
    </xs:element> 
    <xs:element name="configuration" > 
    <xs:complexType> 
     <xs:all> 
     <xs:element name="dsncollection" minOccurs="0"> 
      <xs:complexType> 
      <xs:choice minOccurs="0" maxOccurs="unbounded"> 
       <xs:element name="dsn" minOccurs="0" maxOccurs="unbounded"> 
       <xs:complexType> 
        <xs:choice minOccurs="0" maxOccurs="unbounded"> 
        <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
        <xs:element name="specialregisters" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:sequence> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
         </xs:sequence> 
         </xs:complexType> 
        </xs:element> 
        <xs:element name="sessionglobalvariables" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:sequence> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
         </xs:sequence> 
         </xs:complexType> 
        </xs:element> 
        </xs:choice> 
        <xs:attribute name="alias" type="xs:string" /> 
        <xs:attribute name="name" type="xs:string" /> 
        <xs:attribute name="host" type="xs:string" /> 
        <xs:attribute name="port" type="xs:string" /> 
        <xs:attribute name="ldap" type="xs:integer" /> 
       </xs:complexType> 
       </xs:element> 
       <xs:element name="defaultdsn" minOccurs="0" maxOccurs="1"> 
       <xs:complexType> 
        <xs:sequence> 
        <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
        </xs:sequence> 
        <xs:attribute name="alias" type="xs:string" /> 
        <xs:attribute name="name" type="xs:string" /> 
        <xs:attribute name="host" type="xs:string" /> 
        <xs:attribute name="port" type="xs:string" /> 
       </xs:complexType> 
       </xs:element> 
      </xs:choice> 
      </xs:complexType> 
      <xs:unique name="oneDSNforEachAlias"> 
      <xs:selector xpath="dsn"/> 
      <xs:field xpath="@alias"/> 
      </xs:unique> 
     </xs:element> 
     <xs:element name="databases" minOccurs="0"> 
      <xs:complexType> 
      <xs:sequence> 
       <xs:element name="database" minOccurs="0" maxOccurs="unbounded"> 
       <xs:complexType> 
        <xs:choice minOccurs="0" maxOccurs="unbounded"> 
        <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
        <xs:element name="specialregisters" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:sequence> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
         </xs:sequence> 
         </xs:complexType> 
        </xs:element> 
        <xs:element name="sessionglobalvariables" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:sequence> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
         </xs:sequence> 
         </xs:complexType> 
        </xs:element> 
        <xs:element name="wlb" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:sequence> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
         </xs:sequence> 
         </xs:complexType> 
        </xs:element> 
        <xs:element name="acr" minOccurs="0" maxOccurs="1"> 
         <xs:complexType> 
         <xs:choice minOccurs="0" maxOccurs="unbounded"> 
          <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
          <xs:element name="alternateserverlist" minOccurs="0" maxOccurs="1"> 
          <xs:complexType> 
           <xs:sequence> 
           <xs:element name="server" minOccurs="0" maxOccurs="unbounded"> 
            <xs:complexType> 
            <xs:simpleContent> 
             <xs:extension base="whitespacesonly"> 
             <xs:attribute name="name" type="xs:string" /> 
             <xs:attribute name="hostname" type="xs:string" /> 
             <xs:attribute name="port" type="xs:string" /> 
             </xs:extension>          
            </xs:simpleContent>          
            </xs:complexType> 
           </xs:element> 
           </xs:sequence> 
          </xs:complexType> 
          </xs:element> 
          <xs:element name="alternategroup" minOccurs="0" maxOccurs="1"> 
          <xs:complexType> 
           <xs:choice minOccurs="0" maxOccurs="unbounded"> 
           <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
           <xs:element name="database" minOccurs="0" maxOccurs="unbounded"> 
            <xs:complexType> 
            <xs:simpleContent> 
             <xs:extension base="whitespacesonly"> 
             <xs:attribute name="name" type="xs:string" /> 
             <xs:attribute name="host" type="xs:string" /> 
             <xs:attribute name="port" type="xs:string" /> 
             </xs:extension> 
            </xs:simpleContent> 
            </xs:complexType> 
           </xs:element> 
           </xs:choice> 
          </xs:complexType> 
          </xs:element> 
          <xs:element name="affinitylist" minOccurs="0" maxOccurs="1"> 
          <xs:complexType> 
           <xs:sequence> 
           <xs:element name="list" minOccurs="0" maxOccurs="unbounded"> 
            <xs:complexType> 
            <xs:simpleContent> 
             <xs:extension base="whitespacesonly"> 
             <xs:attribute name="name" type="xs:string" /> 
             <xs:attribute name="serverorder" type="xs:string" /> 
             </xs:extension> 
            </xs:simpleContent> 
            </xs:complexType> 
           </xs:element> 
           </xs:sequence> 
          </xs:complexType> 
          </xs:element> 
          <xs:element name="clientaffinitydefined" minOccurs="0" maxOccurs="1"> 
          <xs:complexType> 
           <xs:sequence> 
           <xs:element ref="client" minOccurs="0" maxOccurs="unbounded" /> 
           </xs:sequence> 
          </xs:complexType> 
          </xs:element> 
          <xs:element name="clientaffinityroundrobin" minOccurs="0" maxOccurs="1"> 
          <xs:complexType> 
           <xs:sequence> 
           <xs:element ref="client" minOccurs="0" maxOccurs="unbounded" /> 
           </xs:sequence> 
          </xs:complexType> 
          </xs:element> 
         </xs:choice> 
         </xs:complexType> 
        </xs:element> 
        </xs:choice> 
        <xs:attribute name="name" type="xs:string" /> 
        <xs:attribute name="host" type="xs:string" /> 
        <xs:attribute name="port" type="xs:string" /> 
       </xs:complexType> 
       </xs:element> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     <xs:element name="parameters" minOccurs="0"> 
      <xs:complexType> 
      <xs:choice minOccurs="0" maxOccurs="unbounded"> 
       <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
       <xs:element name="specialregisters" minOccurs="0" maxOccurs="1"> 
       <xs:complexType> 
        <xs:sequence> 
        <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
        </xs:sequence> 
       </xs:complexType> 
       </xs:element> 
       <xs:element name="sessionglobalvariables" minOccurs="0" maxOccurs="1"> 
       <xs:complexType> 
        <xs:sequence> 
        <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
        </xs:sequence> 
       </xs:complexType> 
       </xs:element> 
      </xs:choice> 
      </xs:complexType> 
     </xs:element> 
     <xs:element name="ldapserver" minOccurs="0"> 
     <xs:complexType> 
      <xs:sequence> 
       <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded" /> 
      </xs:sequence> 
      </xs:complexType> 
     </xs:element> 
     </xs:all> 
    </xs:complexType> 
    </xs:element> 
</xs:schema> 

Répondre

0

Le error message corresponding to SQL1532N lit:

Le fichier de configuration db2dsdriver.cfg contient plusieurs entrées pour l'alias de base de données "base de données-alias".

ce qui signifie probablement que vous faites ont une copie de db2dsdriver.cfg dans l'un des standard locations. Selon le package de pilote que vous avez installé, il peut être sous C:\ProgramData\IBM\DB2\<driver_copy_name or other path>\cfg.

Le fichier .xsd décrit le schéma du fichier de configuration, il est inutile de le modifier. Vous devez localiser le fichier .cfg réel et supprimer les enregistrements de base de données en double, en laissant un seul dont vous avez besoin.

+0

Mustaccio merci pour votre réponse, mais c'est une situation étrange, car il n'y a pas db2dsdriver.cfg du tout, j'ai soigneusement recherché mon Win10 et il n'existe pas. Plus tard, je l'ai copié à partir d'un fichier d'exemple et fait des changements, mais il n'y a eu aucune différence dans le message d'erreur .. – babacim

+0

Je vais passer la configuration pas comme un commentaire, mais comme une autre réponse ci-dessous .. – babacim