sp_setdefaultdatatypemapping (Transact-SQL)
По умолчанию отмечает сопоставление существующего типа данных между Microsoft SQL Server и системой управления базами данных (СУБД), не являющейся SQL Server. Эта хранимая процедура выполняется на распространителе в любой базе данных.
Синтаксические обозначения в Transact-SQL
Синтаксис
sp_setdefaultdatatypemapping [ [ @mapping_id = ] mapping_id ]
[ , [ @source_dbms = ] 'source_dbms' ]
[ , [ @source_version = ] 'source_version' ]
[ , [ @source_type = ] '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 = ] 'destination_dbms' ]
[ , [ @destination_version = ] 'destination_version' ]
[ , [ @destination_type = ] 'destination_type' ]
[ , [ @destination_length = ] destination_length ]
[ , [ @destination_precision = ] destination_precision ]
[ , [ @destination_scale = ] destination_scale ]
[ , [ @destination_nullable = ] source_nullable ]
Аргументы
- [ @mapping_id= ] mapping_id
Определяет сопоставление существующего типа данных. Аргумент mapping_id имеет тип int и значение по умолчанию NULL. Если аргумент mapping_id указан, остальные параметры не требуются.
[ @source_dbms= ] 'source_dbms'
Это имя СУБД, с которой сопоставлены типы данных. Аргумент source_dbms имеет тип sysname и может принимать одно из следующих значений.Значение Описание MSSQLSERVER
Источник является базой данных SQL Server.
ORACLE
Источник является базой данных Oracle.
NULL (по умолчанию)
Необходимо указать этот параметр, если аргумент mapping_id имеет значение NULL.
- [ @source_version= ] 'source_version'
Номер версии исходной СУБД. Аргумент source_version имеет тип varchar(10) и значение по умолчанию NULL.
- [ @source_type= ] 'source_type'
Тип данных в исходной СУБД. Аргумент source_type имеет тип sysname. Необходимо указать этот аргумент, если аргумент mapping_id имеет значение NULL.
- [ @source_length_min= ] source_length_min
Минимальная длина типа данных в исходной СУБД. Аргумент source_length_min имеет тип bigint и значение по умолчанию NULL.
- [ @source_length_max= ] source_length_max
Максимальная длина типа данных в исходной СУБД. Аргумент source_length_max имеет тип bigint и значение по умолчанию NULL.
- [ @source_precision_min= ] source_precision_min
Минимальная точность типа данных в исходной СУБД. Аргумент source_precision_min имеет тип bigint и значение по умолчанию NULL.
- [ @source_precision_max= ] source_precision_max
Максимальная точность типа данных в исходной СУБД. Аргумент source_precision_max имеет тип bigint и значение по умолчанию NULL.
- [ @source_scale_min= ] source_scale_min
Минимальный масштаб типа данных в исходной СУБД. Аргумент source_scale_min имеет тип int и значение по умолчанию NULL.
- [ @source_scale_max= ] source_scale_max
Максимальный масштаб типа данных в исходной СУБД. Аргумент source_scale_max имеет тип int и значение по умолчанию NULL.
- [ @source_nullable= ] source_nullable
Если тип данных в исходной СУБД поддерживает значение NULL. Аргумент source_nullable имеет тип bit и значение по умолчанию NULL. Значение 1 указывает на то, что поддерживаются значения NULL.
[ @destination_dbms = ] 'destination_dbms'
Это имя целевой СУБД. Аргумент destination_dbms имеет тип sysname и может принимать одно из следующих значений.Значение Описание MSSQLSERVER
Назначением является база данных SQL Server.
ORACLE
Назначением является база данных Oracle.
DB2
Назначением является база данных IBM DB2.
SYBASE
Назначением является база данных Sybase.
NULL (по умолчанию)
- [ @destination_version= ] 'destination_version'
Версия продукта целевой СУБД. Аргумент destination_version имеет тип varchar(10) и значение по умолчанию NULL.
- [ @destination_type= ] 'destination_type'
Тип данных, указанный в целевой СУБД. Аргумент destination_type имеет тип sysname и значение по умолчанию NULL.
- [ @destination_length= ] destination_length
Длина типа данных в целевой СУБД. Аргумент destination_length имеет тип bigint и значение по умолчанию NULL.
- [ @destination_precision= ] destination_precision
Точность типа данных в целевой СУБД. Аргумент destination_precision имеет тип bigint и значение по умолчанию NULL.
- [ @destination_scale= ] destination_scale
Масштаб типа данных в целевой СУБД. Аргумент destination_scale имеет тип int и значение по умолчанию NULL.
- [ @destination_nullable= ] destination_nullable
Если тип данных в целевой СУБД поддерживает значение NULL. Аргумент destination_nullable имеет тип bit и значение по умолчанию NULL. Значение 1 указывает на то, что поддерживаются значения NULL.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Хранимая процедура sp_setdefaultdatatypemapping используется во всех типах репликации между СУБД SQL Server и СУБД, не являющейся SQL Server.
Сопоставления типов данных по умолчанию применяются ко всем топологиям репликации, включенным в указанную СУБД.
Разрешения
Только члены фиксированной серверной роли sysadmin могут выполнять хранимую процедуру sp_setdefaultdatatypemapping.
См. также
Справочник
sp_getdefaultdatatypemapping (Transact-SQL)
sp_helpdatatypemap (Transact-SQL)
Другие ресурсы
How to: Specify Data Type Mappings for an Oracle Publisher (Replication Transact-SQL Programming)