Configurare i mapping delle regole di confronto

SQL Server possibile collazione dei risultati delle query in un ordine diverso rispetto a quello previsto dal programma client DRDA. Ad esempio, un professionista IT può configurare un database SQL Server per l'utilizzo di regole di confronto ANSI e un database DB2 per z/OS per l'uso delle regole di confronto EBCDIC.

Regole di confronto automatiche

Il servizio DRDA può aggiungere una clausola a COLLATE una clausola ORDER BY in base a un nome di regole di ORDER BY confronto predefinito.

  
SELECT * FROM CONTOSO.DSN8910.DEPT ORDER BY DEPTNAME  
  
SELECT * FROM [CONTOSO].[DSN8910].[DEPT] ORDER BY DEPTNAME COLLATE SQL_EBCDIC037_CP1_CS_AS  
  
DB2 SELECT ORDER BY syntax automatically transformed to SQL Server ORDER BY COLLATE.  
  

L'elemento defaultCollationName indica al servizio DRDA di aggiungere una clausola SQL Server COLLATE (collation_name) quando si trasforma un'istruzione DB2 SELECTORDER BY con clausola in un'istruzione SQL Server SELECTORDER BY con clausola . Questo attributo facoltativo accetta un valore stringa. Il valore predefinito è SQL_Latin1_General_CP1_CI_AS.

Mapping dei nomi delle regole di confronto

Il servizio DRDA può trasformare un'istruzione SELECT dalla sintassi di DB2 ORDER BY COLLATION_KEY (nome delle regole di confronto) SQL Server una sintassi T-SQL ORDER BY COLLATE (collation_name), con mapping da un valore del nome delle regole di confronto DB2 a un valore SQL Server collation_name, per fornire risultati di query più compatibili. Vedere conversione della sintassi delle regole di confronto più avanti.

  
SELECT * FROM CONTOSO.DSN8910.DEPT ORDER BY COLLATION_KEY (DEPTNAME, 'UCA400R1_LEN_AN')  
SELECT * FROM [CONTOSO].[DSN8910].[DEPT] ORDER BY DEPTNAME COLLATE SQL_EBCDIC037_CP1_CS_AS  

DB2 SELECT ORDER BYsintassi confrontata con SQL Server.

L'elemento collationNames all'interno dell'elemento service può contenere uno o più elementi collationName per indicare al servizio DRDA di eseguire la conversione da un valore del nome delle regole di confronto DB2 a un valore SQL Server collation_name, quando si trasforma un'istruzione DB2 SELECTORDER BY COLLATION_KEY (collation-name) con clausola in SELECTORDER BY COLLATE (collation_name) un'istruzione SQL Server con clausola .

<collationNames>  
          <collationName from="UCA400R1_LEN_AN" to="SQL_EBCDIC037_CP1_CS_AS"/>  
        </collationNames>  
  

Elementi e attributi Collation Names.

Nome regole di confronto

L'elemento collationName deve contenere un attributo from e un attributo to per definire un mapping del nome delle regole di confronto.

Mapping dal nome delle regole di confronto

L'attributo from indica al servizio DRDA SQL Transformer di eseguire la conversione dalla stringa del nome delle regole di confronto specificata all'interno di una clausola DB2 SELECT ORDER BY COLLATION_KEY. Questo attributo obbligatorio accetta un valore stringa. Non è previsto alcun valore predefinito.

Mapping al nome delle regole di confronto

L'attributo to indica al servizio DRDA SQL Transformer di eseguire la conversione nella stringa collation_name specificata all'interno di SQL Server clausola SELECT ORDER BY COLLATE. Questo attributo obbligatorio accetta un valore stringa. Non è previsto alcun valore predefinito.

Per altre informazioni, vedere SQL Server COLLATE.