sp_setdefaultdatatypemapping (Transact-SQL)

Aplica-se a:SQL Server

Marca um mapeamento de tipo de dados existente entre o SQL Server e um DBMS (sistema de gerenciamento de banco de dados) não-SQL Server como padrão. Esse procedimento armazenado é executado no Distribuidor em qualquer banco de dados.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_setdefaultdatatypemapping
    [ [ @mapping_id = ] mapping_id ]
    [ , [ @source_dbms = ] N'source_dbms' ]
    [ , [ @source_version = ] 'source_version' ]
    [ , [ @source_type = ] N'source_type' ]
    [ , [ @source_length_min = ] source_length_min ]
    [ , [ @source_length_max = ] source_length_max ]
    [ , [ @source_precision_min = ] source_precision_min ]
    [ , [ @source_precision_max = ] source_precision_max ]
    [ , [ @source_scale_min = ] source_scale_min ]
    [ , [ @source_scale_max = ] source_scale_max ]
    [ , [ @source_nullable = ] source_nullable ]
    [ , [ @destination_dbms = ] N'destination_dbms' ]
    [ , [ @destination_version = ] 'destination_version' ]
    [ , [ @destination_type = ] N'destination_type' ]
    [ , [ @destination_length = ] destination_length ]
    [ , [ @destination_precision = ] destination_precision ]
    [ , [ @destination_scale = ] destination_scale ]
    [ , [ @destination_nullable = ] destination_nullable ]
[ ; ]

Argumentos

@mapping_id [ = ] mapping_id

Identifica um mapeamento de tipo de dados existente. @mapping_id é int, com um padrão de NULL. Se você especificar @mapping_id, os parâmetros restantes não serão necessários.

@source_dbms [ = ] N'source_dbms'

O nome do DBMS a partir do qual os tipos de dados são mapeados. @source_dbms é sysname e pode ser um dos seguintes valores.

Valor Descrição
MSSQLSERVER A origem é um banco de dados do SQL Server.
ORACLE A origem é um banco de dados Oracle.
NULL (padrão)

Você deve especificar esse parâmetro se @mapping_id for NULL.

@source_version [ = ] 'source_version'

O número da versão do DBMS de origem. @source_version é varchar(10), com um padrão de NULL.

@source_type [ = ] N'source_type'

O tipo de dados no DBMS de origem. @source_type é sysname, com um padrão de NULL. Você deve especificar esse parâmetro se mapping_id for NULL.

@source_length_min [ = ] source_length_min

O comprimento mínimo do tipo de dados no DBMS de origem. @source_length_min é bigint, com um padrão de NULL.

@source_length_max [ = ] source_length_max

O comprimento máximo do tipo de dados no DBMS de origem. @source_length_max é bigint, com um padrão de NULL.

@source_precision_min [ = ] source_precision_min

A precisão mínima do tipo de dados no DBMS de origem. @source_precision_min é bigint, com um padrão de NULL.

@source_precision_max [ = ] source_precision_max

A precisão máxima do tipo de dados no DBMS de origem. @source_precision_max é bigint, com um padrão de NULL.

@source_scale_min [ = ] source_scale_min

A escala mínima do tipo de dados no DBMS de origem. @source_scale_min é int, com um padrão de NULL.

@source_scale_max [ = ] source_scale_max

A escala máxima do tipo de dados no DBMS de origem. @source_scale_max é int, com um padrão de NULL.

@source_nullable [ = ] source_nullable

Especifica se o tipo de dados no DBMS de origem oferece suporte a um valor de NULL. @source_nullable é bit, com um padrão de NULL. 1 significa que NULL os valores são suportados.

@destination_dbms [ = ] N'destination_dbms'

O nome do DBMS de destino. @destination_dbms é sysname e pode ser um dos seguintes valores.

Valor Descrição
MSSQLSERVER O destino é um banco de dados do SQL Server.
ORACLE O destino é um banco de dados Oracle.
DB2 O destino é um banco de dados IBM DB2.
SYBASE O destino é um banco de dados Sybase.
NULL (padrão)

@destination_version [ = ] 'destination_version'

A versão de produto do DBMS de destino. @destination_version é varchar(10), com um padrão de NULL.

@destination_type [ = ] N'destination_type'

O tipo de dados listado no DBMS de destino. @destination_type é sysname, com um padrão de NULL.

@destination_length [ = ] destination_length

O comprimento do tipo de dados no DBMS de destino. @destination_length é bigint, com um padrão de NULL.

@destination_precision [ = ] destination_precision

A precisão do tipo de dados no DBMS de destino. @destination_precision é bigint, com um padrão de NULL.

@destination_scale [ = ] destination_scale

A escala do tipo de dados no DBMS de destino. @destination_scale é int, com um padrão de NULL.

@destination_nullable [ = ] destination_nullable

Especifica se o tipo de dados no DBMS de destino oferece suporte a um valor de NULL. @destination_nullable é bit, com um padrão de NULL. 1 significa que NULL os valores são suportados.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_setdefaultdatatypemapping é usado em todos os tipos de replicação entre o SQL Server e um DBMS não-SQL Server.

Os mapeamentos de tipo de dados padrão se aplicam a todas as topologias de replicação que incluem o DBMS especificado.

Permissões

Somente membros da função de servidor fixa sysadmin podem executar sp_setdefaultdatatypemapping.