Skip to content

Mitä ovat binaaritietotyypit SQL Serverissä?

19 de maaliskuu de 2021

Microsoft SQL Server tukee seitsemää erillistä tietoluokkaa. Näiden, binaarijonot sallia koodatut tiedot, jotka on esitetty binaarikohteina.

Muut tietokantajärjestelmät, mukaan lukien Oracle, tukevat myös binaaritietotyyppejä.

Binaarijono-luokan tietotyyppejä ovat:

  • Bitti muuttujat tallentavat yhden bitin arvolla 0, 1 tai NULL.
  • Binaarinen (n) muuttujat tallentavat n tavua kiinteän kokoista binääridataa. Näihin kenttiin voi tallentaa enintään 8000 tavua.
  • Varbinaari (n) muuttujat tallentavat vaihtelevan pituisen binääridatan noin n tavua. Ne voivat tallentaa enintään 8000 tavua.
  • Varbinaari (max) muuttujat tallentavat vaihtelevan pituisen binääridatan noin n tavua. Ne voivat tallentaa enintään 2 Gt ja itse tallentaa datan pituuden lisäksi kaksi tavua.
  • Kuva muuttujat tallentavat jopa 2 Gt tietoa ja niitä käytetään yleisesti minkä tahansa tyyppisten tiedostojen (ei vain kuvien) tallentamiseen.

kuva type on suunniteltu poistettavaksi SQL Serverin tulevassa julkaisussa. Microsoftin insinöörit suosittelevat käyttöä vaihteleva (max) sijasta kuva tyypit tulevaa kehitystä varten.

Sopivat käyttötavat

Käyttää bitti sarakkeita, kun sinun on tallennettava kyllä ​​tai ei-tyyppisiä tietoja, joita edustavat nollat ​​ja ykkökset. Käyttää binääri sarakkeita, kun sarakkeiden koko on suhteellisen tasainen. Käyttää vaihteleva sarakkeita, kun sarakekoon oletetaan ylittävän 8K tai jos kokoa voidaan vaihdella merkittävästi tietuetta kohti.

Tulokset

T-SQL – Microsoftin SQL Serverissä käytetty SQL-muunnos – oikeanpuoleiset tiedot, kun muunnat mistä tahansa merkkijonotyypistä a binääri tai vaihteleva tyyppi. Mikä tahansa muu tyypin muunnos binäärityypiksi tuottaa vasemmanpuoleisen näppäimistön. Tämä täyte toteutetaan käyttämällä heksadesimaalisia nollia.

Tämän muunnoksen ja katkaisuriskin takia, jos muunnoksen jälkeinen kenttä ei ole riittävän suuri, on mahdollista, että muunnetut kentät voivat johtaa aritmeettisiin virheisiin heittämättä virheilmoitusta.