Ms SQL Server türü. Tipi veri SQL. İki ve iki tür veri

Golovna / İşin optimizasyonu

VERİ YAPISI TASARIMI

Güç kaynağı:

1. Standart tarafından belirlenen veri türleri mov SQL.

2. SQL sunucusundaki gibi verileri yazın. 3

3. Virazi ve değişim. 5

4. SQL'in temel yapıları.

5. SQL server veritabanı yapısının ana nesneleri. 7

Standart tarafından belirlenen veri türleri mov SQL

Dani- Bu, veritabanında farklı türlerden birinden toplanan toplam bilgidir. Ek veri türleri için, kendileri için görülen bellek genişletme de dahil olmak üzere belirli bir tablo sütununa yerleştirilen verilere ilişkin temel kurallar belirlenir.

Mov SQL, standart tarafından tanımlanan altı skaler veri türüne sahiptir. Kısa açıklamaları tablolarda verilmiştir.

sembolik veri

Sembolik veriler, VTYS'nin yaratıcıları tarafından söylenen sembol setinden önce dahil edilen bir sembol dizisinden oluşur. Diğer karakter kümeleri, SQL dilinin farklı lehçelerine özgü, karakterlerin çevirisi gibi, bu karakter türlerinin değerine kadar dahil edilebileceği gibi belirli bir uygulamaya da düşmektedir. En sık kullanılan karakter kümeleri ASCII ve EBCDIC'dir. Bir karakter tipine veri atamak için aşağıdaki format kullanılır:

<символьный_тип>::=

( KARAKTER [ DEĞİŞEN][uzun] | [uzun])

Bir karakter veri tipine ayarlandığında, varsayılan değer parametresi, sütuna yerleştirilebilecek maksimum karakter sayısını gösterecek şekilde ayarlanır (yakalama için 1 değeri kabul edilir). Bir karakter dizisi kural olarak atanabilir, neyin düzeltilebileceği veya değiştirilebileceği (DEĞİŞEN). Bir satıra sabit bir çift değer atanmışsa, ondan önce daha az sayıda sembol girildiğinde, değer sağ tarafa eklenen atanan çift boşluk sayısına eklenir. Bir satıra değiştirilmiş eski bir değer atanırsa, veritabanına daha az sayıda sembolün eklenmesiyle, girilen sembollerden daha fazla kaydedilecek ve bu da eski hafızanın aynı tasarruflarına ulaşılmasına izin verecektir.

bit verileri

Bit türü savaş sıralarının danih vikoristovuetsya tanımı, tobto. cilt z'si 0 veya 1 olabilen çift basamaklı (bіtіv) dizi. Bit türündeki veriler, ek rahatsız edici biçime atanır:

<битовый_тип>::=

BIT [dovzhina]

tam sayılar

Kesin sayısal veri türü zastosovuєtsya vyznachennya sayıları, yakі daha doğru vyavlennya, tobto olabilir. sayılar, rakamlardan, dilsel olmayan bir ondalık noktadan ve dilsel olmayan bir işaret sembolünden toplanır. Kesin sayısal tipteki veriler, doğruluk ve uzun atış kısmı ile belirlenir. Doğruluk, bir sayının tam ve kesirli olarak girilebileceği, ancak onuncu noktanın kendisini tersine çeviremeyeceği, bir sayının önemli onuncu basamağının toplam sayısını ayarlar. Ölçek, sayının diğer onlarca satırının sayısını gösterir.

<фиксированный_тип>::=

(SAYISAL[kesinlik[,ölçek]]|(DECIMAL|DEC)

[doğruluk[, ölçek]]

| (TASAYI|INT) | KÜÇÜK)

Tipi SAYISALі ONDALIK numaraları onuncu biçimde kaydetmek için atanmıştır. Zamovchuvannyam için av tüfeği kısmının değeri sıfıra eşittir ve abdest için kabul edilen doğruluk uygulamada yatmaktadır. INTEGER (INT) türü, büyük pozitif veya negatif tam sayıları yakalamak için kullanılır. SMALLINT tipi – küçük pozitif ve negatif tam sayıların kaydedilmesi; bu açıdan eski hafıza hızla canlanıyor.

Yuvarlatılmış sayılar

yuvarlatılmış sayı türü zastosovuetsya, bir bilgisayarda doğru bir şekilde dosyalamak mümkün olmadığından, gerçek sayıların tam sayısını veri açıklaması için. Yuvarlatılmış sayılar veya kayan noktalı sayılar, ek bir peygamber devesi için böyle bir sayı kaydedildiğinde, ona eşit (sıralı) ile çarpıldığında bilimsel gösterimde verilir, örneğin: 10E3, +5.2E6, -0.2E-4 . Konuşma türünün belirlenmesi için biçim:

<вещественный_тип>::=

( FLOAT [doğruluk] | GERÇEK |

ÇİFT HASSASİYET)

Parametre kesinlik mantisin anlamlı basamak sayısını ayarlar. GERÇEK ve ÇİFT HASSASİYET türlerinin doğruluğu belirli bir uygulamaya yatırılacaktır.

tarih ve saat

Veri türü "tarih/saat" Belirlenen doğrulukla saatteki anın randevusunu kazanın. SQL standardı şu biçimi destekler:

<тип_даты/времени>::=

(TARİH | SAAT [kesinlik] |

TIMESTAMP[kesinlik])

DATE veri türü, YIL, AY ve GÜN alanlarını içeren takvim tarihlerini depolamak için kullanılır. TIME veri türü, SAAT (yıllık), DAKİKA (hvilin) ​​​​ve İKİNCİ (saniye) alanlarını içeren saat işaretini saklamak için kullanılır. TIMESTAMP veri türü, o saatteki tarihi kaydetmek içindir. Kesinlik parametresi, İKİNCİ alanında kaydedilen değerin kesinliğini belirtmek için ondalık basamak sayısını belirtir. Bu parametre atlanırsa, TIME türündeki sütunlar için varsayılan değer sıfıra eşit alınır (böylece tüm saniyeler kaydedilir), TIMESTAMP şarap türündeki alanlar için ise 6'ya eşit alınır. aynı TIMEUT'a ayarlanmış, TIMEZONE HOUR alanı bölgesel saatin yılı ve tarihi, evrensel koordinat saatine (Greenwich saati) göre tarihe göre kendileri tarafından ayarlanır.

INTERVAL türündeki veriler, saatlik dosyalama dönemleri için verilir.

Etki alanını anlama

Alan adı- bir dizi özellik için izin verilen değerler kümesi. Veritabanı tablolarında veya çıkartma tablolarında tek ve aynı özelliklerle karakterize edilebilen stovpt'ler olduğu gibi, bu tür stovptsya ve yogo davranışının türünü etki alanı aracılığıyla tanımlamak ve daha sonra görünümü koymak mümkündür. etki alanı adına aynı stovptsі. Etki alanı, bir özniteliğe atanabilecek tüm potansiyel değerleri atar.

SQL standardı, saldırgan bir operatörün yardımıyla bir etki alanı belirlemenize olanak tanır:

<определение_домена>::=

ALANI OLUŞTUR name_domain

veri tipi

[Varsayılan değer]

[ KONTROL (geçerli_değer)]

Oluşturulan dış görünüm alanının adlandırılması, veri türü, kilit değeri ve izin verilen değerler kümesi olması gerekir. Operatör biçiminin geçersiz olduğunu belirtmek için kaydırın. Artık adın veri türünü etki alanına değiştirmek için tablo oluşturma zamanını belirleyebilirsiniz.

Operatörün yardımı için veri tabanından alan aralığı istenir:

DROP DOMAIN name_domain [ KISITLAMA |

CASCADE anahtar kelimesi girildiğinde, görülen farklı bir etki alanı için oluşturulmuş bir tablo olsun, otomatik olarak değişecek ve açıklama, atanan için atamanın adı olan o türdeki verilerin yerini alacak şekilde değiştirilecektir. görülen etki alanı.

SQL Server'ın ortasındaki etki alanlarına bir alternatif, veri koristuvach türüdür.

SQL-server'da başarılı olan veri türleri

Sistem Veri Türleri

Tablo oluşturma sürecindeki ana noktalardan biri, її alanları için veri türlerinin seçimidir. Tablo alanının veri türü, bu alana yerleştirilecek bilgilerin türünü belirler. SQL Server'daki veri türünün anlaşılması, modern programlamadaki veri türünün anlaşılması için genellikle yeterlidir. SQL sunucusu çok çeşitli veri türlerini işler: metin, sayılar, çiftler (böl. tablosu).

SQL Server veri türlerine hızlıca bir göz atalım.

sberіgannya karakter bilgisi için vikorivuyutsya karakter veri türleri, CHAR (dovzhina), VARCHAR (dovzhina), NCHAR (dovzhina), NVARCHAR (dovzhina) yalan söyleyene kadar. Unicode karakterleri almak için kalan iki bayrak. Maksimum değer 8000 karakterle sınırlıdır (Unicode karakterler için 4000).

TEXT ve NTEXT ek metin veri türleri için büyük ölçüde (2 GB'a kadar) sembolik verilerin kaydedilmesi gerekir.

Önceki tüm veri türleri INT (INTEGER), KÜÇÜK, KÜÇÜK, BÜYÜK. Bir tamsayı sayısal türü için veri kaydetmek için, 4 bayt (-231 ila 231-1 aralığı), 2 bayt (aralık -215 ila 215-1), 1 bayt (0 ila 255 aralığı) veya 8 bayt seçilebilir (aralık -263 ila 263-1 arasındadır). Tüm türdeki nesneler ve virüsler, herhangi bir matematiksel işlemde sıkışıp kalabilir.

Depolarda onlarca nokta bulunan sayılara sayısal olmayan denir. Tamsayı olmayan veriler iki türe ayrılır - düzinelerceі yaklaşık.

Önceki onuncu Veri türü DECIMAL [(precision[,scale])] veya DEC ve NUMERIC [(precision[,scale])] olmalıdır. DECIMAL ve NUMERIC veri türleri, kayan noktalı sayı kesinlik biçimini bağımsız olarak ayarlamanıza olanak tanır. Kesinlik parametresi, bu tür veriler için (toplamdaki onuncu noktadan önce ve sonra) maksimum basamak sayısını belirtir ve ölçek parametresi, onuncu noktadan sonra eklenecek maksimum basamak sayısını belirtir. Varsayılan modda, sunucu DECIMAL ve NUMERIC türlerinde olduğu gibi (2 ila 17 bayt için) 28'den fazla basamak girmenize izin verir.

Önceki yaklaşık veri türü FLOAT (15 haneye kadar doğruluk, 8 bayta kadar) ve GERÇEK (7 haneye, 4 bayta kadar doğruluk). Qi tipi, bu biçimleri yüzen bir koma, tobto ile temsil eder. sayıların temsili için, mantis ve sıra, sayı küçük ve büyük olduğu için bağımsız olarak aynı hesaplama doğruluğunu sağlayan muzafferdir.

hakkında bilgi toplamak için o saati ver o saatin tarihlerini temsil etmek için kullanılan DATETIME ve SMALLDATETIME gibi bu tür veriler tanınır 8 ve 4 bayt.

Tipi danih PARA ve KÜÇÜKMONEY bir kuruş türündeki bilgilerin kaydedilmesini teşvik etmek; Kokular, Komi'den sonra 4 karaktere kadar olan değerin doğruluğunu sağlar ve muzaffer 8 ve 4 bayt netleşir.

Veri Türü BIT 0 veya 1 değerini alan bir bit kaydetmenizi sağlar.

Ortalama SQL Server uygulaması düşük özel veri türleri.

veri tipi ZAMAN DAMGAMI vikoristovuєtsya, veri tabanının sınırlarındaki satırın versiyonunu değiştirmenin bir göstergesi olarak.

veri tipi BENZERSİZ TANIMLAYICI küresel kimlik numaralarının toplanması için kazanın.

veri tipi SISNAME nesne tanımlayıcıları için atamalar.

veri tipi SQL_VARIANT SQL Server TEXT, NTEXT, IMAGE ve TIMESTAMP tarafından kullanılan veri tiplerinden herhangi birinin değerini kaydetmenize izin verir.

veri tipi MASA, zamanlama tablolarına benzer şekilde, bir dizi sıranın güvenliğini sağlamak, daha fazla işlem için işaretler. TABLO veri türü, yerel işlevler tarafından yerel olarak değişen ve döndürülen değerlerle engellenebilir.

veri tipi İMLEÇİmleçler gibi nesnelerle çalışmak için gereklidir ve yalnızca kaydedilen prosedürlerin parametrelerini değiştirmek için istekler olabilir. SQL Server imleçleri, sunucu ve istemci arasında veri alışverişi için bir mekanizmadır. İmleç, istemci eklerinin tam bir veri kümesiyle değil, yalnızca bir veya daha fazla satırla çalışmasına izin verir.

Son güncelleme: 12.07.2017

Tabloların oluşturulduğu saatin altında, tüm її stovptsiv için veri türünü belirtmek gerekir. Verinin türü, sütuna hangi değerlerin kaydedilebileceği, kaç kokunun bellekte yer kaplayabileceği belirlenir.

T-SQL dilinin birçok farklı türü vardır. Değerin doğasına bağlı olarak, gruplara ayrılabilirler.

Sayısal veri türleri

    BIT: 0 veya 1 değerini alır. Aslında, programlama dilinde boole tipinin bir analoğudur. 1 bayt alır.

    TINYINT: 0'dan 255'e kadar sayıları alır. 1 bayt alır. Küçük sayılar almak için gitmek iyidir.

    SMALLINT : -32768 ile 32767 arasındaki sayıları alır. 2 bayt alır

    INT : -2147483648 ile 2147483647 arasındaki sayıları alır. 4 bayt ödünç alır. Numara kaydetmenin en yaygın türü.

    BÜYÜK : bellekten 8 bayt alan -9223372036854775808 ile 9223372036854775807 gibi büyük sayıları bile alır.

    DECIMAL : Sabit bir hassasiyetle sayıları alın. Komi'den sonraki sayı sayısından belirsiz bir şekilde 5 ila 17 bayt arasında ödünç alır.

    Bu tür, kesinlik ve ölçek olmak üzere iki parametre alabilir: DECIMAL(precision, scale) .

    Kesinlik parametresi, bir sayının alabileceği maksimum basamak sayısını temsil eder. Değer 1 ile 38 arasında olabilir. Kilitlemek için daha pahalıdır 18.

    Ölçek parametresi, Komi'den sonra sayıyı dengeleyebilecek maksimum basamak sayısını temsil eder. Bu değer, kesinlik parametresinin değerine kadar 0 aralığında olabilir. umovchannyam için 0 daha pahalıdır.

    SAYISAL: DECIMAL tipine benzer Danimarka tipi.

    SMALLMONEY : -214748.3648 ile 214748.3647 arasında bir atış değeri alır. Kuruş tasarrufu için randevular. 4 bayt alır. DECIMAL(10,4) ile eşdeğerdir.

    PARA : -922337203685477.5808 ile 922337203685477.5807 arasındaki atış değerlerini kaydeder. Kuruşları hayal edin ve 8 bayt alır. DECIMAL(19,4) ile eşdeğerdir.

    FLOAT : -1.79E+308 ile 1.79E+308 arasındaki sayıları alır. Kesirli kısımdan 4 ila 8 bayt arası ödünç alma.

    FLOAT(n) kullanabilirsiniz, de n bit sayısıdır, böylece sayının (mantis) onuncu kısmını kaydetmeyi seçebilirsiniz. Promosyonlar için n = 53.

    GERÇEK : –340E+38 ile 3.40E+38 arasındaki sayıları kaydedin. 4 bayt alır. FLOAT(24) tipine eşdeğerdir.

Numaraları uygulayın: Maaş PARA, TotalWeight DECIMAL(9,2), Age INT, Fazlalık FLOAT

Tipi danih sho o saatin tarihini temsil eder

    TARİH: 0001-01-01 (Cumartesi 1, 0001) ile 9999-12-31 (Cumartesi 31, 9999) arasındaki tarihleri ​​kaydedin. 3 bayt alır.

    TIME : saati 00:00:00.0000000 ila 23:59:59.9999999 aralığından alır. 3 ila 5 bayt ödünç alır.

    TIME(n) formunu kullanabilirsiniz; burada n, kesirli saniyeler için 0'dan 7'ye kadar olan basamak sayısı olur.

    DATETIME : 01/01/1753 ile 31/12/9999 arasındaki tarihleri ​​kaydedin. 8 bayt alır.

    DATETIME2 : 01/01/0001 00:00:00.0000000 ile 31/12/9999 23:59:59,999999 arasında tarih ve saat alır. Saatin doğruluğuna bağlı olarak 6 ila 8 bayt arasında ödünç alır.

    DATETIME2(n) formunu kullanabilirsiniz; burada n, kesirli saniyeler için 0'dan 7'ye kadar olan basamak sayısı olur.

    SMALLDATETIME : Tarih ve saati, en yakın tarih olan 01/01/1900 ile 06/06/2079 aralığında kaydedin. 4 bayt ödünç alır.

    DATETIMEOFFSET : Tarih ve saati 0001-01-01 ila 9999-12-31 aralığında kaydedin. 100 nanosaniyeye kadar doğrulukla saat hakkında ayrıntılı bilgi alır. 10 bayt alır.

Genişletilmiş tarih biçimleri:

    yyyy-aa-gg- 2017-07-12

    gg/aa/yyyy - 12/07/2017

    aa-gg-yy - 07-12-17

    Bu biçimde, 00 ile 49 arasındaki iki basamaklı sayılar 2000-2049 aralığında tarih olarak kabul edilir. Ve 50'den 90'a kadar olan sayılar, 1950 - 1999 sayı aralığıdır.

    Ay gg, yyyy - 12 Temmuz 2017

Rozpovsyudzhenі saat formatı:

  • ss:mi am/pm - 1:21 pm

    ss:mi:ss - 1:21:34

    ss:mi:ss:mm - 1:21:34:12

    ss:mi:ss:nnnnnnn - 1:21:34:1234567

Satır türleri veri

    CHAR : 1 ila 8000 karakter uzunluğunda bir dize seçer. Deride, sembol 1 bayt ile görülür. Zengin mov için uygun değildir, parçalar Unicode kodlamasında olmayan karakterleri alır.

    Sobaları kurtarabilecek sembollerin sayısı kollarda iletilir. Örneğin, CHAR(10) türünde bir anahtar için 10 bayt görülecektir. Ve sütuna 10 karakterden az bir satır kaydedersek, ek boşluklar olacaktır.

    VARCHAR: Bir satır kaydedin. Dış görünüm sembolünde 1 bayt görünür. Dizenin belirli bir uzunluğunu belirtebilirsiniz - 1 ile 8.000 karakter arasında, örneğin VARCHAR(10) . Bir satır 8000'den fazla karakterden oluşan bir anneden kaynaklanıyorsa, MAX boyutu belirtilir ve satır seçiminde en fazla 2 GB görülebilir: VARCHAR(MAX) .

    Zengin mov için uygun değildir, parçalar Unicode kodlamasında olmayan karakterleri alır.

    5 karakterlik bir satırda 5 karakterlik bir satır kaydedilirse, sütunun kendisi beş karakterli olarak kaydedilir.

    NCHAR : Unicode kodlamasından 1 ila 4000 karakter arasında bir dize alır. Deride sembol 2 bayt görülür. Örneğin, NCHAR(15)

    NVARCHAR : Unicode kodlamasından bir satır alır. Deride sembol 2 bayt görülür. 1 ila 4.000 karakter için belirli bir boyut ayarlayabilirsiniz: . Bir satır 4000'den fazla karakterden sorumluysa, MAX genişletme belirtilir ve bir satırda 2 GB'a kadar görülebilir.

TEXT ve NTEXT'in iki türü daha eskidir ve bunların kullanılması önerilmez. Bunların yerine VARCHAR ve NVARCHAR değiştirilebilir.

Satır sütunlarının tanımını uygulayın:

E-posta VARCHAR(30), Yorum NVARCHAR(MAX)

İkili veri türleri

    İKİLİ: 1 ila 8000 baytlık bir benzer diziden ikili veri alır.

    VARBINARY : MAX (VARBINARY(MAX)) değişken değerinin saati için 1 ila 8.000 bayt arasında veya 2^31–1 bayta kadar ikili verileri bir dizi olarak alır.

Diğer bir ikili tür olan IMAGE türü kullanımdan kaldırılmıştır ve bunun VARBINARY türüyle değiştirilmesi önerilir.

Diğer veri türleri

    UNIQUEIDENTIFIER : 16 bayt alan benzersiz bir GUID (aslında bir dizi benzersiz değer).

    TIMESTAMP : bir ondalık sayıdır, bu nedenle tablo satırının sürüm numarasını alır. 8 bayt alır.

    CURSOR: bir dizi satırı temsil eder.

    HIERARCHYID: hiyerarşideki bir konumu temsil eder.

    SQL_VARIANT : Diğer herhangi bir T-SQL veri türünden veri kaydedebilirsiniz.

    XML: XML belgelerini veya XML belgelerinin parçalarını alır. Bellekten 2 GB'a kadar ödünç alır.

    TABLO : Tablo tanımlarını gönderin.

    COĞRAFYA : enlem ve boylam gibi coğrafi verileri toplar.

    GEOMETRİ: konumun koordinatlarını düzlemde kaydeder.

Tipi veri SQL.

Tanım

dize tipi

Oruç dozhina sembolleri bir satır

CHAR (karakter sayısı)

Hayatın değişiminin bir dizi sembolü

VARCHAR (karakter sayısı)

Yaşam Hayatının Büyük Sembolleri Sırası

Veliky Dviykovy

değişiklik nesnesi

Sayısal kesin türler

Bütün sayı

Bütün sayı. Sipariş sayısı daha büyük veya daha pahalı INTEGER

Bütün sayı. rütbe sayısı

birden az INTEGER

Sabit komalı numara

(işaret sayısı - toplam işaret sayısı, ölçek - Komi'den sonraki işaretler)

(SAYISAL | DECIMAL | DEC) (satır sayısı, ölçek)

Sayısal hatalı türler

Yüzen koma ile sayı

Yüzen komaya sahip bir sayı. Derecelerin miktarı daha fazla veya daha pahalı GERÇEK

ÇİFT HASSASİYET

Yüzen koma ile sayı

FLOAT (satır sayısı)

Timchasov tipi

Tarih. Nehrin intikamını almak için o gün ay

Timchas rozeti. Nehrin intikamını almak için, ay, gün, yıl, o saniye hvilin

ZAMAN DAMGASI (ölçek)

Saat. Yılın intikamını alın, o saniye hvilin (ölçek - kіlkіst

saniyenin kesirli kısmında işaretler). Timcha bölgesini eklemek mümkündür

ZAMAN (ölçek)

Saatlik aralık.

Boole türü

Mantıksal değerleri kabul et

      1. değişmezler

Değişmezler, farklı türlerin anlamları oldukları için en basit ayetlerdir. Dış görünüm verileri, türlerinin değişmezlerini tanımlamak için kullanılabilir. SQL aşağıdaki değişmez değerlere sahiptir:

    sembolik satırlar (uç: "Sembol satırı"),

    çift ​​sıra (popo: X"1AFFD561"),

    sayılar (uygulayın: 27 -863 0.173 .8582 -9572.5619 11.54E7 .94E194 93E-12 -29.629E27),

    saat(TARİH "2005-12-07" SAAT "SS:MI:SS" TIMESTAMP "YYYY-AA-GG SS:MI:SS"),

    mantıksal (DOĞRU, YANLIŞ, BİLİNMİYOR).

      1. Operatörler ve virazi

operatörler- Veri öğeleri üzerindeki işlemleri belirten yapıları taşıyın ve yeni bir değerin sonucu olarak bunları çevirin. Operatörlerin içerdiği veri öğelerine işlenenler ve argümanlar denir. Operatörlere özel sembollere ve anahtar kelimelere bakılarak hizmet verilmektedir. Örneğin, çarpma operatörü bir yıldız işareti (*) ile temsil edilir ve tanımsız bir değer üzerindeki ters çevirme operatörü IS NULL anahtar sözcüğü ile temsil edilir.

İki ana operatör türü vardır. Unary'nin yalnızca bir işleneni olabilir ve ses rahatsız edici biçimde görülür:

işlenen operatörü

İkili dosyalar iki işlenenle çalışır ve şöyle görünür:

işlenen operatör işlenen

Ek olarak, iki işlenen üzerinde yakі vykoristovuyut olan özel operatörler vardır. Operatörün tipi, eşleşen argümanların tipine ve döndürülecek sonucun tipine göre belirlenir. Є bu tür operatörler:

    satırlar (||);

    aritmetik;

    mantıklı;

    yüklem eşleşmesi;

    özel yüklemler;

    operatörler çarpımlar (tablolar).

Bölüm 3. Film TemelleriSQL

Ders 19. Operatör grupları. tipi danih

İlişkisel veritabanlarının dili SQL deneysel bir ilişkisel DBMS'nin önceki projesi çerçevesinde 70'lerin ortasında genişleme IBM'den System R . İlişkisel DBMS ve filmin genişletilmesini içeren Danimarka projesi SEQUEL (Yapılandırılmış İngilizce Sorgu Dili ). Tsya isimlendirmesi daha az sıklıkla filmin özünü yansıtıyordu. Mova, ilişkisel veritabanına yapılan sorguların kullanışlı ve anlaşılır formülerine baş rütbe tarafından yönlendirildi, aslında, zaten ilişkisel veritabanının tam kapsamıydı ve operatörün suçu, veritabanının sorgulanması ve manipülasyonunda formüle edildi. , böyle:

· veritabanı şemasının belirlenmesi ve işlenmesi;

· sayıların ve tetikleyicilerin değişiminin belirlenmesi;

· veritabanı oluşturma;

· fiziksel seviyenin yapılarının belirlenmesi, yakі pіdtrimuyut effektivne vykonannya zapіv;

· tablolara ve alanlara erişimin otomasyonu;

· tasarruf işlemleri ve vodkativ destek noktası.

70'lerin şirketi gibi kehanet değişiklik izin mektubu filmin varyantı Devamı , hangi otrimav adı SQL . 1983 yılında şirket IBM, SQL'i DB2 ambarından yayınlar.

Mova SQL'i uzaktaki buv döşeme, scho daha yeni, 1986'da. Amerikan Ulusal Standartlar Enstitüsü ( ANSI ) yogayı bir standart olarak benimsemiş olmak. O zamandan beri, standart 1989, 1992'de birkaç kez birbirine baktı. filmin bir sonucu olarak SQL bazı küçük değişiklikler yapıldı. Danimarka'da en geniş kapsamlı standart є'dir. SQL-92.

Tipi ekipleriSQL

Komut SQL'i Taşı , zihinsel olarak gruplara ayırabilirsiniz:

· DCL ( Veri kontrol dil) - Mova yönetimi danimi. Move komutu, veritabanında depolanan bilgilere erişim olarak tanınır. (Tablo 19.1);

· DDL (Veri Tanımlama Dili) - Mova vznachennya danikh. Veritabanı nesnelerinin yapısını oluşturmak ve değiştirmek için birkaç komut seçilir (Tablo 19.2);

· DML ( Veri manipülasyon dil) - Danimin Mova manipülasyonu. Bıyıklar, veritabanı nesnelerinde depolanan bilgileri işlemek için kullanılır (Tablo 19.3);

· DQL ( Veri Sorgu dil) - Danih'e kadar Mova zapitіv. Sadece bir operatörden oluşan en başarılı grup SEÇME , zapitіv'in DB'ye oluşumu için kabul edildi (tablo 19.4);

· TCL (işlem kontrol dil) - mov işlem yönetimi (tablo 19.5);

CCL (İmleç Kontrol Dili ) - mov imleç kontrolü (tablo 19.6);

SQL'in dili prosedürel değildir, ancak daha az değil, ortadaki SQL Server, örneğin operatör arkları, yıkama döngüleri vb. gibi verimli algoritmalar yazmak imkansız olmayan bir dizi farklı anahtar yapıya sahiptir.

Tablo 19.1 - Danimi yönetme maliyetleri DCL

Şebeke

Tanım

VERİTABANI DEĞİŞTİR

Bir dizi temel veritabanı nesnesini değiştirme

DEĞİŞTİRME

Ana veritabanı depolama alanının değiştirilmesi

ŞİFRE DEĞİŞTİR

Tüm veri tabanları için şifreyi değiştirin

VERİTABANI YARAT

Yeni bir veritabanı oluşturuyorum ve ana parametreleri tanımlıyorum

DBAREA OLUŞTUR

Verilerin yerleştirilmesi için erişilebilir olan kaydetme ve soyma alanı oluşturuyorum

VERİTABANI BIRAK

Veritabanını görüntüleme (hakların varlığı için)

DBAREA'YI BIRAK

Aktif verileri barındırmadığı için kaydetme alanını görebilirsiniz.

HİBE

diviz DB nesnelerine erişim hakları verilmesi

GERİ ÇEKMEK

Veritabanı nesnelerine veya veritabanı nesneleri ile eylemlere erişim haklarına izin verir

Tablo 19.2 - Veri atama operatörleri DDL

Şebeke

Tanım

TABLO OLUŞTUR

Veritabanında yeni bir tablo oluşturun

BIRAKMA TABLOSU

Veritabanından temel tabloyu görüntüleyin

TABLOYU DEĞİŞTİR

Tabloların yapısını değiştirme

GÖRÜNÜM OLUŞTUR

Eyleme uygun bir ifade (sanal tablo) oluşturuyorum SQL sorgusu

GÖRÜNÜMÜ BIRAK

Tezahürün yaratılmasından önce görürsün

GÖRÜNÜMÜ DEĞİŞTİR

Gerçek bildirimi değiştir

İNDEKS OLUŞTUR

Belirli bir tablo için bir dizin oluşturun

DROP ENDEKSİ

Anahtar dizinini görüntüleyin

Tablo 19.3 - Veri Manipülasyon Operatörleri DML

Şebeke

Tanım

SİLMEK

Seçimin zihniyle bir veya birkaç kayıt zgіdno görüyorsunuz. Operatörün ifadesi, bütünlüğü koruma ilkeleriyle tutarlıdır, bu nedenle operatörün sözdizimsel olarak doğru şekilde kaydedilmesi için doğru bir şekilde düzeltilmesine gerek yoktur.

SOKMAK

Zihin seçiminden temel tabloya bir veya daha fazla kayıt ekleyin, zgidno

GÜNCELLEME

Bir veya daha fazla kayıttaki bir veya daha fazla alanın değerini, seçimin zihinlerinde belirtildiği gibi güncelleyin

Tablo 19.4 - Verilerden önce Mova zapitіv DQL

Şebeke

Tanım

SEÇME

İlişkisel cebirin olasılığını daha fazla gerçekleştiren operatör. Sormanız gereken sonuç önerisini formüle etmenizi sağlar

Tablo 19.5 İşlem Yönetimi TCL

Şebeke

Tanım

İŞLEMEK

İşlemi tamamlıyorum (işlemle birlikte bilgilerin karmaşık karşılıklı işlenmesi)

GERİ DÖNME

İşlem günlüğü (işlem sırasında yapılan değişikliklerin kaydedilmesi)

KAYDETME NOKTASI

Alma olasılığının uygulanması için DB'nin bir ara noktasının (stand) seçilmesi

Tablo 19.6 - İmleç kontrolleri C CL

Şebeke

Tanım

BİLDİRMEK

için imleci görüntüler.

AÇIK

Görüntü İmleci

GİDİP GETİRMEK

İmlece gösterilen sanal ND'den bir satır satırı okuma

KAPAT

İmleci kapat

HAZIRLAMA

SQL ifadesini dinamik yürütme için hazırlayın

UYGULAMAK

Dinamik geçersiz kılmadan önce hazırlıktan önce SQL ifadesini geçersiz kıl

tipi danih movi SQL

Mov SQL, standart tarafından tanımlanan altı skaler veri türüne sahiptir. Їx tablo 19.7'de verilen kısa açıklama

Tablo 19.7 - tipi danih movi SQL

veri tipi

goloshennia

Simgesel

CHAR | VARCHAR

bitovi

bit | BİT DEĞİŞEN

tam sayılar

SAYISAL | ONDALIK | TAM SAYI | KÜÇÜK

konuşma numaraları

şamandıra | GERÇEK | ÇİFT HASSASİYET

tarih saat

TARİH | zaman | ZAMAN DAMGAMI

Aralık

ARALIK

Satır türleri:

§ CHARACTER(n) veya CHAR(n) - geçerli tarihin karakter dizileri n semboller. Cilt değeri türünü ayarladığınızda, girmelisiniz n semboller ve gerçek bir değer olarak daha az ödünç alır, daha düşük n VTYS günlük sembollere otomatik olarak boşluk ekler.

§ VARCHAR(n) - hayatın değişiminin sembol sıraları.

Bit türleri:

§ İçinde (p) - ölüm sonrası günün bir dizi savaşı.

§ BIT VARYING(n) - bir dizi değişim savaşı.

Kesin tipler:

§ SAYISAL[(n,m)] - tam sayılar, burada - sayıdaki toplam basamak sayısı. le, m - ondalık noktadaki basamak sayısı.

§ ONDALIK [(n, m)] - tam sayılar, burada n, sayıdaki toplam basamak sayısıdır, m, ondalık basamaktaki basamak sayısıdır.

§ DEC[(n,m)] - DECIMal.[(n,m)] ile aynı.

§ INTEGER chi INT - tam sayı.

§ SMALLINT - daha küçük aralığın sayısı.

Konuşma türleri:

§ FLOAT [(n)] - kayan nokta biçiminden alınan yüksek kesinlik sayıları. Burada n - Bir numarayı kaydetmek için ayrılacak bayt sayısı. Sayı aralığı uygulamaya özeldir.

§ GERÇEK - sayıların konuşma türü, kayan noktalı sayılara benzer, daha düşük hassasiyet, daha düşük FLOAT.

§ GERÇEK için daha yüksek uygulama hassasiyeti, daha düşük uygulama hassasiyeti ile ÇİFT HASSASİYET veri türü belirtimi.

Tarih/saat ve aralığı yazın:

§ TARİH - takvim tarihi.

§ ZAMAN - saat formatı.

§ ZAMANLAR TAMR (doğruluk) - tarih ve saat.

§ ARALIK - zaman aralığı.

Ticari VTYS'lerin çoğu, standarda özgü ek veri türlerini destekler. Bu nedenle, örneğin, uygulamada, tüm VTYS'ler, başka bir şekilde, büyük yükümlülüğün yapılandırılmamış metnini temsil edecek veri türünü destekler. Bu tür, masaüstü DBMS'deki MEMO türüne benzer. Bu türler farklı şekilde adlandırılır, örneğin ORACLE bu türü LONG, DB2 - LONG VARCHAR, SYBASE ve MS SQL Server - TEXT olarak adlandırır.

Kontrol beslenme

1. dil nedir SQL?

2. uyuyan partnerim ne SQL bu ilişkisel cebir?

3. Yaki zasobi mova içerir SQL?

4. Filmde ne tür komutlar görülüyor? SQL?

5. DML.

6. Ana film komutlarını adlandırın DDL.

7. Ana film komutlarını adlandırın DCL.

8. Ana film komutlarını adlandırın DQL.

9. Taşıma işlemi işlemlerinin ana komutlarını adlandırın.

10. Bu filmlerin ana türlerini adlandırın SQL.

11. Veri filmlerinin satır türlerini adlandırın SQL.

12. Filmin sayı türlerini adlandırın SQL.

13. İsim tipi haraç o saat vermek.

Bugün dünya, bilgi toplamak için kullanılan çok sayıda teknolojiye ve araca sahiptir. Basi danih en geniş koshtіv biridir. p align="justify"> Onlarla çalışmak için farklı kontrol sistemleri verilir. İletimi kaydetmenin böyle bir yolu, tüm bilgilerin açık bir şekilde yapılandırılması ve özel tablolara girilmesidir. Tablolar, kendi yollarıyla, aynı tür bilgilerin stovptsiv-özniteliklerinden oluşur.

Veri türü nedir?

Bugün, verinin türünü anlamanın anlamını açıklamak için tarihin belirlendiği açıktır. Derilerinin önemli bir anlamı olabilir. Zihinsel olarak, veri türü, її değerleri ile karakterize edilen bir veri grubu olarak tanınabilir - sayısal, yalnızca sembolik - ve bu değerlerin değerine göre zastosovuvatisya olabilen işlemler. Farklı veri türlerinin seçiminin kapsamı daha da zengindir. Veriler yalnızca bilgi toplamak amacıyla değil, aynı zamanda görevleri tamamlamak için programlama yaparken de bükülebilir. Programların geliştirildiği bir saatte, ilk operasyon kümesinden en iyi veri türlerini seçme uygulaması daha yaygın hale geldi. Koristuvach'ın bilgilerinin temeli, ana veri türlerini yalanlamaktır. Temeller için standart SQL, en geniş bilgi türlerini temel alır, ancak bir takım küçük eklemeler içerir.

Tipi verileri: sınıflandırma

Tür için verilerin gruplandırılması uzun zaman önce ortaya çıktı. Vaughn, işlemlerinin bütünlüğünü sağlamak için tüm bilgi iletişiminin viklikana gerekli yapılandırılmasıydı. Günümüzde tüm temel veri türlerinin temelinde iki temel veri vardır: sembolik ve sayısal. Bu verilere dayanarak, göstergeler, ciss, mantıksal, kayan virgül içeren sayılar ve bir satır türü bilgi içerdiğinden modern sınıflandırma bozuldu. Tüm vishchezgadanoy povnistyu ohoplyu klasifikatsiya SQL. Ancak günümüz sistemleri için özel havai sistemler için veri tabanları kullanılmaktadır. Onlardan önce MySQL ve Oracle görülüyor.

Temel veri türleri

SQL dil standartlarına uygun tablo öznitelikleri oluşturulurken kullanılan veri türleri 4 sınıfa ayrılabilir: string değerleri, kesirler, tamsayılar, saat ve tarih değerleri.

Satır türü danich

Birinci tip veri, sembollere bakarak verilen bilgilerin kaydedilip kaydedilmemesine olanak sağlar. Herhangi bir SQL sorgusunda bir satır gibi işlenecek olan özel karakterler ve harfler hakkında bir fikriniz var mı? Aşağıda bir tür veri var, yakі ilk grubu onaylıyor:

- CHAR (boyut) – satırları kaydetmek için bu tip seçilir. Kollardaki göstergeler, parametre kaydedilen satırın uzunluğunu sabitlemenize izin verir. Bir satır için maksimum boyutu bayt - 255 olarak ayarlayabilirsiniz.

- VAR CHAR (boyut) - iletme tipine benzer şekilde, bu tip, uzunluğu 255 karakteri geçmeyen satırları kaydetmenize izin verir. Bu tür CHAR türünün ana değeri, bu türün değerini kaydetmek amacıyla gerekli miktarda bellek görülmesidir. Bu sıralamada 5 karakterden oluşan bir satır için 6 bayt bellek gerekecektir. İlk defa, değeri kaydetme hafızası tam olarak belirtilen parametreye kadar görülecektir.

— KÜÇÜK METİN – bu tür, 65535 karakteri geçmeyen metinsel bilgileri yakalamak için kullanılır.

- BLOB - bu tür METİN türüne benzer. Vin, 65535 karaktere kadar olabilen metin bilgilerini veritabanında saklamanıza izin verir. Ancak pratikte bu tür küçükleri, sağlam bilgileri, elektronik belgeleri vb. kaydetmek için kullanılabilir.

— ORTA METİN – bu tür, METİN türüne göre ayrılmıştır. Para miktarı için 16 777 215 sembole yükseltilen para miktarı için, türü daha fazla tasarruf etmenizi sağlar.

- MEDIU MBLOB - sberіgannya e-belgeleri için zastosovuetsya, rozmiru 16777215 karakter taşımaz.

- UZUN METİN - önceki veri türlerine benzer işlevsel yetenekler için, ancak bellek boyutu 4 GB'a kadar artırılabilir.

- UZUN BLOB - 4294967295 sembol - büyük yükümlülüğün verilerini veritabanına yerleştirme imkanı verir.

- ENUM - bu, diğer değerlerin bir listesini atamak için seçilen özel bir veri türüdür. Hedef türü, 65535 değer girmenize olanak tanır. Bu türdeki satırlar, bir çoğulluk ile belirtilen tüm değerlerden yalnızca birini alabilir. Örneğin verilen listeye eklenen değer eklenirse boş değer tabloya yazılır.

- SET - bu tür veriler anonim geçerli değerleri tanımlar. Önden görünümün ön görünümünde, verilen argümanların kaç elemanını belirlemek için kullanılabilecek 64 parametrenin değiştirilmesi için kazançlar yapılır.

Diğer veri türlerini içeren tablo

Kesirli SQL veri türü, kayan noktadan sayıları depolamak için ayrılmıştır. Bu türden sağlam, pratik veriler, çeşitli finansal göstergeleri karakterize eder. Gerekli doğruluğa bağlı olarak, daha düşük sayıdaki türden biri puanlanabilir.

FLOAT (boyutlu) - kesinlik atanan kesirli sayıları kaydetmek için zastosovuetsya - d;

- ÇİFT (boyutlu) - çift doğruluktan çekimleri kurtarmak için zastosovuetsya;

- DECIMAL (boyut, d) - zastosovuetsya, av tüfeği değerlerini görünen satırlardan kurtarmak için. Zastosovuєtsya banka hesaplarında, çekim bölümünün doğruluğu 8 veya 10 karaktere ulaşabilir.

Bu galusideki ilk iki türü bilmek mümkün değildir. Mali göstergelerin satırlar şeklinde kaydedilmesi, pratik görevlerin zenginliğinin yerine getirilmesini önemli ölçüde kolaylaştırabilir. Finansal beslenmedeki işlemleri ve değişiklikleri gerçekleştirirken, veri türlerinin SQL dönüşümü büyük önem taşıyabilir. Veri toplayıcılar, verilerin kalıcı olarak değişmeden kalması için bilgi depolama ve işleme yöntemlerinin türünü sağlamalıdır.

Silindir tipi verileri

Ana sınıflardan birini oluşturan Okremy sayı grubu, sayılardır. Tamsayı veri türleri, çeşitli yetki uzantılarıyla INTEGER temel türüne dayanır.

  • INT (boyut) – [-231;231-1] aralığından çok fazla veri alarak kazanır.
  • TINYINT (boyut) – -128 ile 127 arasındaki sayıları toplamak için kötüdür.
  • KÜÇÜK (boyut) - -32768'den 32767'ye alınan biraz daha büyük bir veri aralığı ile karakterize edilir.
  • MEDIUMINT (beden) – -223'ten 223-1'e kadar beden numaralarını kaydetme çeşidi.
  • BÜYÜK (boyut) - -263 ile 263-1 arasında tam sayı değerleri aralığı.

Doğru veri türünü seçerek, biraz bellekten tasarruf edebilir ve gerekli SQL sorguları için sunucu zamanını değiştirebilirsiniz. Bu їх aralığındaki veri türleri, kaydedilecek bellek miktarını belirler. Perakendecilerin, nitelikler için geniş aralık seçiminin bellek maliyetlerinde artışa neden olabileceğini hatırlamaları gerekir. Rozv'yazuvani zavdannya'nın net bir analizinin ardından ve durumu ortaya çıkardıktan sonra, bazı durumlarda, yaklaşık veri aralığı, zihnin bir işaretle sayı seçimine atanır. Kazanılacak küçük bir argüman aralığı varsa ve tüm sayılar pozitif olacaksa, niteliği UNSIGNED olan imzasız bir tür kullanmak daha doğru olacaktır.

Tipi o tarihi saat verir

SQL'in temellerinde zaman ve tarih türleri büyük ilgi görüyor. Daha düşük tiplerin seçimi, çalışmaları kesintisiz olarak saatlik göstergeler şeklinde bulunabilen sistemlerin geliştirilmesinde ek avantajlar sağlayabilir.

  • TARİH - "Rik-Ay-Gün" formatında tarihi seçmek için kullanılan ana tür. Değerler "-" ile alt bölümlere ayrılmıştır. Bununla birlikte, bazen, bir perakendeci gibi, bir grup sayının arkasında semboller olsun, zadіyanі olabilirler.
  • ZAMAN - tablo tablosuna zaman değerini girme imkanı verir. Değerler ss:dd:ss formatında verilmiştir.
  • TARİH SAAT - bu tür, önceki iki işlevin işlevleri için aynıdır. Başka birinden veri toplama biçimi şöyle görünür: "yyyy-aa-gg: ss: dd: ss".
  • TIME STAMP – bu tür, belirtilen değerden önce 01 Ocak 1970'den bu yana geçen saniye sayısını sayan saatin tarihini kaydeder.
  • YIL (M) – iki karakterli bir biçimden satır değerleri almak için dur.

Bilmen gereken başka ne var? Sunulan tüm veri türleri Microsoft şirketi tarafından sistemleştirildi. Bu aynı zamanda SQL veri türlerinin daha ayrıntılı bir açıklamasıdır. Örnek olarak, ampulün şekli boyanmış olup, hafızanın galip geldiği saatin altında görülen cilt tipi veridir. Mevcut tüm bilgileri anladıktan sonra, sunucunun donanım özelliklerine bağlı olarak perakendecilerin temel tablonun yapısını tasarlaması daha kolay olabilir.

NULL - özel gösterge

Bazı durumlarda, tablo girişine ekleme yapılırken tüm girişlerden bilgi girilmesi gerekiyorsa, veritabanlarının doldurulma saati durumdur. Bunun için özel bir boş tanıma göstergesi veya NULL seçilmesi gerekir. Vin yak dopomіzhny zasіb zastosovuє mov SQL. Tipi data stovptsіv, yakі neobov'yazkovo zapovnyuvatisya zapovnyuvatisya, zakazuyutsya nın operatörü, scho, tabloyu derlerken boş değerler eklemenize izin verir. Ayrıca, DEĞİL alt önekine sahip NULL operatörü, tüm değerlerin diliyle eşleşecek bir değişken olabilir. NULL belirteci yazılamaz. Vin basitçe boş değerlerle veritabanı tablolarına girilir. Bu nedenle, bir bütün olarak, kombinasyonları daha fazla veri türünün temsillerinden biriyle birleştirebilirsiniz.

© 2022 androidas.ru - Android hakkında her şey