sp_addtype (Transact-SQL)
Bir diğer ad veri türü oluşturur.
Önemli |
---|
Bu özellik Microsoft SQL Server'ın ilerideki bir sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanmakta olan uygulamalarda değişiklik yapmayı planlayın.Use create type onun yerine. |
Sözdizimi
sp_addtype [ @typename = ] type,
[ @phystype = ] system_data_type
[ , [ @nulltype = ] 'null_type' ] ;
Bağımsız değişkenler
[ @typename= ] type
diğer ad veri türü addır.Diğer ad veri türü adları kurallarýna uygun olmalýdýr tanımlayıcıları ve her veritabanı içinde benzersiz olmalıdır.typeİş sysname, ile hiçbir varsayılan.[ @phystype=] system_data_type
Fiziksel olan veya SQL Server tarafından sağlanan, diğer ad veri türü temel veri türü.system_data_type olan sysname, hiçbir varsayılan ve can ile aşağıdaki değerlerden biri:bigint
binary(n)
bit
char(n)
datetime
decimal
float
image
int
money
nchar(n)
ntext
numeric
nvarchar(n)
real
smalldatetime
smallint
smallmoney
sql_variant
text
tinyint
uniqueidentifier
varbinary(n)
varchar(n)
Boşluk veya noktalama işaretleri katıştırılmış tüm parametreleri tırnak işaretleri gereklidir.Kullanılabilir veri türleri hakkında daha fazla bilgi için bkz: Veri Türleri (Transact-SQL).
n
Seçtiğiniz veri türü için uzunluk belirten bir negatif olmayan tamsayıdır.P
En fazla toplam sayısını, hem sol hem de ondalık noktanın sağındaki depolanabilir ondalık basamak sayısını gösteren bir negatif olmayan tamsayıdır.Daha fazla bilgi için, bkz. ondalık ve sayısal (Transact-SQL).s
Maksimum ondalık noktanın sağında depolanan ondalık basamak sayısını gösterir negatif olmayan bir tamsayı ise ve duyarlılığa eşit veya bundan küçük olmalıdır.Daha fazla bilgi için, bkz. ondalık ve sayısal (Transact-SQL).[ @ nulltype = ] 'null_type'
diğer ad veri türü null değerleri işleme biçimini gösterir.null_typeİş varchar(8), null, varsayılan değer ve tek tırnak işaretleri ('null', 'not null' veya 'nonull') alınmalıdır.null_type Açıkça tarafından tanımlanan sp_addtype, küme geçerli varsayılan null atanabilirlikolur.GETANSINULL sistem işlev , geçerli varsayılan null atanabilirlikbelirlemek için kullanın.Bu set deyim veya alter database kullanarak ayarlanabilir.Verilebilirliğini açıkça tanımlanmalıdır.@ Phystype olan bit, ve @ nulltype belirtilmezse, varsayılan değer değil null.Not
null_type Parametresi yalnızca tanımlar varsayılan null atanabilirlik için bu veri türü.diğer ad veri türü, tablo oluşturma sırasında kullanıldığında null atanabilirlik açıkça tanımlanmış, üzerinde tanımlı null atanabilirliköncelik kazanır.Daha fazla bilgi için, bkz. ALTER TABLE (Transact-SQL) ve CREATE TABLE (Transact-SQL).
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (hata)
Sonuç Kümeleri
Hiçbiri
Açıklamalar
Bir diğer ad veri türü adı veritabanı içinde benzersiz olmalıdır, ancak diğer ad veri türleri farklı adlarla aynı tanıma sahip olabilir.
Yürütme sp_addtype görünen bir diğer ad veri türü oluşturur sys.types Katalog görünümü belirli bir veritabanı için.diğer ad veri türü tüm yeni kullanıcı tanımlı veritabanlarında kullanılabilir, eklemek modeli.Bir diğer ad veri türü oluşturulduktan sonra create table veya alter table kullanmak ve diğer ad veri türü için varsayılanları ve kuralları da bağlayabilirsiniz.Kullanılarak oluşturulan tüm skaler diğer ad veri türleri sp_addtype bulunan dbo şema.
Diğer veri türleri, veritabanının varsayılan harmanlama devralır.Sütun alfabe düzenlerini ve diğer ad türü değişkenleri tanımlanmış Transact-SQL create table, alter table ve declare @local_variable ifadeleri.Veritabanının varsayılan harmanlama değiştirme yalnızca yeni sütunlar ve türündeki değişkenler için geçerlidir; var olan harmanlama değiştirmez.
Güvenlik Notu |
---|
Geriye dönük uyumluluk amacıyla, ortak veritabanı rolü kullanılarak oluşturulan diğer ad veri türlerine başvurular izni verilen otomatik olarak sp_addtype.Ne zaman diğer ad veri türleri yerine create type deyim ile oluşturulan Not sp_addtype, bu tür otomatik grant oluşur. |
Diğer veri türleri kullanılarak tanımlanamaz SQL Server timestamp, table, xml, varchar(max), nvarchar(max) veya varbinary(max) veri türü.
İzinler
Üyelik gerektiren db_owner veya db_ddladmin veritabanı rolüsabit.
Örnekler
A.null değerler için izin vermeyen bir diğer ad veri türü oluşturma
Aşağıdaki örnek, adlı bir diğer ad veri türü oluşturur ssn (sosyal güvenlik numarası) bağlı SQL Server-sağlanan varchar veri türü.ssn 11 Basamaklı sosyal güvenlik numarası (999-99-9999) tutan sütunların veri türü kullanılır.sütun null olamaz.
Dikkat varchar(11) , noktalama (parantez içinde) içerdiğinden tek tırnak işareti içine alınmış.
USE master;
GO
EXEC sp_addtype ssn, 'varchar(11)', 'NOT NULL';
GO
B.null değerler için izin veren bir diğer ad veri türü oluşturma
Aşağıdaki örnek, diğer ad veri türü oluşturur (temel datetime) adlı birthday sağlayan için null değerleri.
USE master;
GO
EXEC sp_addtype birthday, datetime, 'NULL';
C.Veri türleri ek diğer ad oluşturma
Aşağıdaki örnek, iki ek diğer ad veri türü oluşturur telephone ve fax, yurtiçi ve uluslararası telefon ve faks numaraları.
USE master;
GO
EXEC sp_addtype telephone, 'varchar(24)', 'NOT NULL';
GO
EXEC sp_addtype fax, 'varchar(24)', 'NULL';
GO
Ayrıca bkz.