Управляемое сопоставление типов данных (SQL Server Compact). Типы данных ms sql server


Типы данных

Эта документация перемещена в архив и не поддерживается.

Каждый столбец в таблице из базы данных Microsoft SQL Server Compact 4.0 поддерживает набор типов данных, в котором указывается тип данных, которые может содержать столбец.

Примечание

У MicrosoftSQL Server и SQL Server Compact 4.0 могут быть небольшие отличия в способе поддержки типов данных в случаях, когда исполнение функции приводит к переполнению данных или к их потере.

SQL Server Compact 4.0 поддерживает следующие типы данных.

Тип данных

Описание

bigint

Целочисленные данные (целые числа) от –2^63 (–9 223 372 036 854 775 808) до 2^63–1 (9 223 372 036 854 775 807). Размер хранения составляет 8 байт.

integer

Целочисленные данные (целые числа) от –2^31 (–2 147 483 648) до 2^31–1 (2 147 483 647).

Размер хранения составляет 4 байта.

smallint

Целочисленные данные от –32 768 до 32 767. Размер хранения составляет 2 байта.

tinyint

Целочисленные данные от 0 до 255. Размер занимаемой памяти — 1 байт.

bit

Целочисленные данные со значением 1 либо 0.

Размер занимаемой памяти — 1 бит.

numeric (p, s)

Synonyms:

decimal(p,s) and dec (p,s)

Данные с фиксированной точностью и численным масштабом от –10^38+1 до 10^38–1. Переменная p указывает точность и может принимать значения от 1 до 38. Переменная s указывает масштаб, она может принимать значения от 0 до p.

Размер хранения составляет 19 байт.

money

Значения денежных данных от (–2^63/10000) (–922 337 203 685 477,5808) до 2^63–1 (922 337 203 685 477,5807) с точностью до десятитысячной доли денежной единицы. Размер хранения составляет 8 байт.

float

Числовые данные с плавающей запятой от –1,79E +308 до 1,79E+308

Размер хранения составляет 8 байт.

real

Числовые данные с плавающей точностью от –3.40E+38 до 3.40E+38.

Размер хранения составляет 4 байта.

datetime

Данные даты и времени от 1 января 1753 г. по 31 декабря 9999 г. с точностью до одной трехсотой секунды или 3,33 миллисекунды. Значения округляются с шагом 0,000, 0,003 или 0,007 миллисекунд.

Хранятся как два 4-байтовых целочисленных значения. В первых 4 байтах хранится количество дней до или после base date, 1 января 1900 г. Базовая дата — это эталонная дата системы. Значения для datetime ранее 1 января 1753 г. запрещены. В других 4 байтах хранится время дня в миллисекундах после полуночи. Допустимый диапазон секунд — от 0 до 59.

Формат Пример

ГГГГ-ММ-ДД чч:мм:сс 1947/08/15 03:33:20

ММ-ДД-ГГГГ чч:мм:сс 04/15/1947 03:33:20

ДД ГГГГ ММ чч:мм:сс 15 янв 1947 03:33:20

ДД ММММ ГГГГ ч:мм:сс 15 января 1947 03:33:20

national character(n)

Synonym:nchar(n)

Данные Юникод постоянной длины с максимальной длиной 4 000 символов. Стандартная длина = 1. Размер занимаемой памяти в байтах — количество введенных символов, умноженное на два.

national character varying(n)

Synonym:nvarchar(n)

Данные Юникод переменной длины с максимальной длиной от 1 до 4 000 символов. Стандартная длина = 1. Размер занимаемой памяти в байтах — количество введенных символов, умноженное на два.

ntext¹

Данные Юникод переменной длины с максимальной длиной (2^30–2)/2 (536,870,911) символов. Размер занимаемой памяти в байтах — количество введенных символов, умноженное на два.

Примечание

В строковых функциях ntext более не поддерживается.

nchar

Данные в Юникоде постоянной длины n знаков, значение n должно быть в диапазоне от 1 до 4 000. Занимаемый размер — 2n байт.

binary(n)

Двоичные данные Юникод постоянной длины с максимальной длиной 8 000 байт. Стандартная длина = 1.

Размер занимаемой памяти не изменяется, его длина в байтах заявлена в типе.

varbinary(n)

Двоичные данные Юникод переменной длины с максимальной длиной 8 000 байт. Стандартная длина = 1.

Размер занимаемой памяти изменяется. Он равен длине значения в байтах.

image¹

Двоичные данные Юникод переменной длины с максимальной длиной 2^30–1 (1 073 741 823) байт.

Хранилище данных — это длина значения в байтах.

uniqueidentifier

Глобальный уникальный идентификатор (GUID). Размер занимаемой памяти — 16 байт.

IDENTITY [(s, i)]

Это свойство столбца данных, где содержатся данные неопределенного типа.

Для столбцов удостоверений могут быть использованы только столбцы целочисленных данных. В таблице может содержаться только один столбец идентификаторов. Если указать начальное значение и значение шага, столбец будет невозможно обновить.

s (seed) = начальное значение

i(increment) = значение шага

ROWGUIDCOL

Это свойство столбца данных, где содержатся данные неопределенного типа. Это столбец таблицы, который определен с помощью типа данных uniqueidentifier. В таблице может содержаться только один столбец ROWGUIDCOL.

Timestamp/rowversion

Это автоматически создаваемый уникальный двоичный номер.

Размер занимаемой памяти — 8 байт.

¹В SQL Server Compact 4.0 данные Ntext и изображения сохраняются на новой странице данных, когда число байтов превышает 256. Это может сказаться на степени компактности базы данных, поскольку базы данных SQL Server Compact 4.0 сжимаются по страницам, а не по байтам.

Дополнительные сведения о типах данных SQL Server, требующих преобразования в SQL Server Compact 4.0, см. в разделе Различия между SQL Server Compact и SQL Server.

technet.microsoft.com

2.3 Типы данных ms sql Server.

Для каждого столбца необходимо определить в обязательном порядке кроме уникального в пределах таблицы имени столбца также тип данных. Присвоение типа данных каждому столбцу является одним из первых шагов, предпринимаемых при проектировании таблицы. Типы данных определяют допустимые значения данных для каждого столбца.

2.3.1 Типы char и varchar.

Являются символьными типами данных фиксированной или переменной длины.

char [ ( n ) ] - символьные данные фиксированной длины, не в Юникоде, с длиной n байт. Значение n должно находиться в интервале от 1 до 8000. Размер хранения данных этого типа равен n байт. Синонимом по стандарту ISO для типа char является character.

varchar [ ( n | max ) ] - символьные данные переменной длины, не в Юникоде; n может иметь значение от 1 до 8 000; max означает, что максимальный размер хранения равен 2^31-1 байт. Размер хранения равен фактической длине данных плюс два байта. Введенные данные могут иметь длину 0 символов. Синонимами по стандарту ISO для типа varchar являются типы char varying или character varying.

Данные char или varchar могут быть отдельным знаком или строкой максимальной длиной в 8000 символов для данных char и до 2^31 символов для данных varchar.

Типы данных varchar могут принимать две формы. Данные varchar могут быть указанной максимальной длины в знаках, например varchar(6) свидетельствует о том, что в этом типе данных может храниться максимум шесть символов или он может иметь вид varchar(max), увеличивающий максимальное число символов, которые могут храниться в этом типе данных, до 2^31.

Символьные константы должны быть заключены в одинарные (') или двойные кавычки ("). Рекомендуется заключение символьных констант в одинарные кавычки. Заключение символьных констант в двойные кавычки иногда не допускается, если параметру QUOTED IDENTIFIER присвоено значение ON.

Данный пример кода Transact-SQL присваивает символьной переменной значение:

DECLARE @MyCharVar CHAR(25)

SET @MyCharVar = 'Ricardo Adocicados'

Если для выделения символьной константы, содержащей вложенную одинарную кавычку, применяются одинарные кавычки, используйте две одинарные кавычки для представления вложенной одинарной кавычки.

Например:

SET @MyCharVar = 'O''Leary'

Если данные, подлежащие хранению, длиннее, чем допустимое число символов, они усекаются. Например, если столбец определен как char(10) и в нем сохраняется значение "Это действительно очень длинная символьная строка", то SQL Server усекает символьную строку до "Это действ".

Тип данных char становится типом данных с фиксированной длиной, если указано предложение NOT NULL. Если в столбец char с предложением NOT NULL вставляется значение короче, чем длина столбца, это значение заполняется вправо при помощи пробелов до размера столбца. Например, если столбец определен как char(10) и в нем должно быть сохранено значение "музыка", SQL Server сохраняет данные в виде "музыка____", где "_" обозначает пробел.

2.3.2 Типы данных nchar и nvarchar.

Это - символьные типы данных, имеющие постоянную длину (nchar), или переменную длину (nvarchar), содержащие данные в Юникоде и использующие набор символов UCS-2.

nchar [ ( n ) ] - символьные данные в Юникоде длиной в n символов. Аргумент n должен иметь значение от 1 до 4000. Размер хранилища вдвое больше n байт. Синонимами по стандарту ISO для типа nchar являются типы national char и national character.

nvarchar [ ( n | max ) ] - символьные данные в Юникоде переменной длины. Аргумент n может принимать значение от 1 до 4 000. Аргумент max указывает, что максимальный размер хранилища равен 2^31-1 (2 147 483 647) байт. Размер хранилища в байтах вдвое больше числа введенных символов + 2 байта. Введенные данные могут иметь длину в 0 символов. Синонимами по стандарту ISO для типа nvarchar являются типы national char varying и national character varying.

studfiles.net

26. Используемые типы данных в sql Server.

Понятие типы данных в SQL-serverполностью адекватно понятию типа данных в современных языках программирования.SQLServerподдерживает большое число различных типов данных : текстовые, числовые, двоичные и т.д.

Типы данных в SQLобъединены в следующие категории:

Bigint-8 байт

Int – 4 байта

Smallint – 2 байта

Tinyint 1 байт

Символьные типы данных фиксированной char [ ( n ) ] или переменной длины varchar [ ( n | max ) ]. • char [ ( n ) ] - символьные данные фиксированной длины, с длиной n байт. Значение n должно находиться в интервале от 1 до 8000. Размер хранения данных этого типа равен n байт. • varchar [ ( n | max ) ] - символьные данные переменной длины, n может иметь значение от 1 до 8 000. max означает, что максимальный размер хранения равен 2^31-1 байт. Размер хранения равен фактической длине данных плюс два байта. Введенные данные могут иметь длину 0 символов.

Типы двоичных данных фиксированной binary [ ( n ) ], переменной длины varbinary [ ( n | max) ] и image (будет удален в следующих версиях). • binary [ ( n ) ] - двоичные данные фиксированной длины размером в n байт, где n — значение от 1 до 8000. Размер хранения составляет n байт. • varbinary [ ( n | max) ] - двоичные данные переменной длины. n могут иметь значение от 1 до 8000; max означает максимальную длину хранения, которая составляет 2^31-1 байт. Размер хранения — это фактическая длина введенных данных плюс 2 байта. Введенные данные могут иметь размер 0 символов. • Тип binary применяется в тех случаях, когда размер данных в столбце поддается предварительной оценке.

К пространственным типам данных в SQL Server относятся GEOMETRY и GEOGRAPHY. С их помощью можно создавать различные геометрические фигуры — точки, линии, многоугольники или, как их еще называют в англоязычной литературе, полигоны. • Эти типы данных позволяют задать собственно фигуру, ее внешний вид и ее положение в некоторой системе координат. В базе данных оба типа данных хранятся в одинаковом формате — в виде потока двоичных данных. Размер поля, отводимого для хранения таких данных, является переменным

Позволяет хранить XML-документы и их фрагменты в базе данных SQL Server

Рекомендации по использованию типов данных• Данные, которые будут вводиться в столбец, должны соответствовать типу данных, заданному для этого столбца. Поэтому необходимо выбрать такой тип данных, который лучше всего охватит диапазон значений, которые могли бы храниться в столбце для всего срока эксплуатации базы данных, и в то же время, стремясь ограничить ненужный расход места на диске. • Ненужный расход места на диске – это место на диске, выделенное для элементов данных, хранящихся в столбце, но не используемое.Рекомендации по использованию типов данных Типы данных с переменной длиной следует применять, только если предполагается значительные различия в длине данных, хранимых в данном столбце, и когда данные из столбца обновляются редко. К данным с переменной длиной относятся varchar, nvarchar, varbinary, text, ntext и image.

studfiles.net

Управляемое сопоставление типов данных (SQL Server Compact)

Эта документация перемещена в архив и не поддерживается.

Microsoft SQL Server Compact 4.0 поддерживает не все типы данных .NET. При осуществлении доступа к данным с использованием ADO.NET SQL Server Compact 4.0 преобразует неподдерживаемые типы к поддерживаемым.

В таблице отображено сопоставление типов данных между SQL Server Compact 4.0 и поставщиком данных .NET.

Тип данных .NET

Тип данных SQL Server Compact

binary

varbinary

boolean

bit

byte

tinyint

byte[]

varbinary

datetime

datetime

decimal

numeric

double

float

guid

uniqueidentifier

image

image

int16

smallint

int32

int

int64

bigint

SqlBinary

varbinary

SqlBoolean

bit

SqlByte

tinyint

SqlDecimal¹

numeric

SqlDateTime

datetime

SqlDouble

float

SqlGuid

uniqueidentifier

SqlInt16

smallint

SqlInt32

int

SqlInt64

bigint

SqlMoney

money

SqlSingle

real

SqlString

nvarchar

single

real

string

nvarchar

¹ SQL Server Compact 4.0 поддерживает тип данных SqlDecimal размером не более 96 бит. При превышении этого размера в SQL Server Compact возникает ошибка исключения переполнения.

Справочник
Другие ресурсы

msdn.microsoft.com

Типы данных | MS SQL для начинающих

Базы данных хранятся на сервере и состоят из множества связанных между собой таблиц. Все элементы одного столбца таблицы должны быть одно типа.

Тип указывает:

  • как хранятся данные;
  • какие манипуляции над ними можно совершать.

В связи с этим каждый тип имеет два важнейших атрибута:

  • диапазон значений;
  • размер занимаемого дискового пространства.

Различать типы и понимать для чего каждый предназначен очень важно для проектировки баз данных и для манипуляции этими данными (запросы к базам).

Типы данных Transact SQL:

1.Числа.

1.1   Приблизительные.

1.2   Точные.

2. Дата и время.

3. Символьные строки.

3.1   Символьные строки.

3.2   Символьные строки в Юникоде.

4. Двоичные данные.

5. Прочие типы данных.

 

В таблице ниже представлены типы данных, которые чаще всего используются в работе программиста SQL.

 

Значение типа

Тип данных в Transact SQL

Диапазон

Размер на диске

Назначение

Символьная строка переменной длины

varchar(N)

Количество символов указывается в параметре N

Каждый символ - 1 байт в ASCII

Хранение строк в ASCII – адреса электронной почты, имена, описания.

nvarchar(N)

Каждый символ – 2 байта Unicode

Руководства, справки, внутренний текст

Символьная строка фиксированной длины

char(N)

Количество символов всегда N. Если фактическая строка меньше N, то ее остальная часть заполняется нулями.

Каждый символ - 1 байт в ASCII

Устаревший тип данных. В основном используется в случаях, когда нужно хранить один символ char(1) или nchar(1)

nchar(N)

Каждый символ – 2 байта Unicode

Целое число

int

-2 147 483 648 до 2 147 483 647

 

 

4 байта

Наиболее распространенный тип в РБД.

Используется везде где нужны числа без дробных частей. Идентификаторы таблице всегда имеют этот тип.

Действительное число

float(n)

Позволяет задавать количество цифр после запятой(точность)

- 1,79E+308 — -2,23E-308, 0 и 2,23E-308 — 1,79E+308

Зависит от значения n.

Используется для отношений между элементами строки и любых дробных чисел. Высокая точность числа -для в баз с метеорологическими, банковскими расчетами. Низкая – для остальных отношений.

Дата

date

От 1 января 1 года до 31 декабря 9999 года

Преобразуется в переменную типа int от 1 до 3 байт

Необходим для фиксирования дат: регистрации, событий, изменений.

Время

time

От 00:00:00.0000000 до 23:59:59.9999999

5 байт

Необходим для фиксации времени: длительность звонка, время вылета.

Дата и время

datetime2

Совмещает диапазоны date и time

От 6 до 8 байт в зависимости от точности времени

Комбинированый назначение типов date и time

Флаг

bit

0 или 1

1 байт

Необходим для фиксации одного из двух состояний: абонент доступен/недоступен, жилец сдал деньги/не сдал деньги и т.д.

Допустим вы задались целью создать базу данных жильцов многоквартирного дома. В таблицу базы данных о жильцах вы должны вместить следующую информацию:

  • ФИО жильца –  строка;
  • Дата рождения – строка;
  • Время заселения – время;
  • Номер квартиры – целое число;
  • Email-адрес (для массовой рассылке о поборах на ЖКХ) – строка;
  • Идентификационный номер жильца – целое число.

Заполненная таблица приобретёт следующий вид:

 

ИД. Жильца

ФИО

Дата рождения

Время заселения

Номер квартиры

Email-адрес

101

Алексин. В.В.

22.11.1972

13.11.2008

11

[email protected]

102

Горбунов Д.Д.

25.05.1922

14.06.2011

25

[email protected]

103

Симонова К.Р

11.02.1956

17.06.2001

13

[email protected]

104

Дормитотова К.С.

15.09.1977

29.11.1984

9

[email protected]

int

varchar

varchar

time

int

varchar

Нижняя строка таблицы – перечисление использованных типов Transact SQL. Строка не является частью таблицы, добавлена для удобства восприятия.

Null-значения

Для случаев, когда нет данных чтобы заполнить все ячейки таблицы предусмотрено значение NULL.

Унарные операции над NULL-значением всегда возвращают NULL, например, операции инкремента или декремента. Бинарные операции возвратят NULL, если хотя бы один из операндов имеет NULL-значение.

Чтобы ячейки столбца могли содержать значения NULL, програмист должен явно это указать при создании таблицы через инструкцию CREATE TABLE, либо переопределить столбец через инструкции SET.

Любые типы поддерживают NULL-значения, кроме типа TIMESTAMP.

NULL значения удобно использовать, как идентификатор незаполненных ячеек, чтобы узнать какие данные в каких столбцах отсутствуют в текущей таблице. 

brainoteka.com

Типы данных SQL Server и ADO.NET

  • 03/30/2017
  • Время чтения: 3 мин
  • Соавторы

В этой статье

В SQL Server и .NET Framework используются различные системы типов, что может привести к потенциальной потере данных.SQL Server and the .NET Framework are based on different type systems, which can result in potential data loss. Чтобы сохранить целостность данных, поставщик данных .NET Framework для SQL Server (System.Data.SqlClient) предоставляет типизированные методы доступа для работы с данными SQL Server.To preserve data integrity, the .NET Framework Data Provider for SQL Server (System.Data.SqlClient) provides typed accessor methods for working with SQL Server data. Для указания типов данных SqlDbType можно использовать перечисления классов SqlParameter.You can use the enumerations in the SqlDbType classes to specify SqlParameter data types.

Дополнительные сведения и таблицу с описанием данные сопоставления типов между SQL Server и типы данных .NET Framework, см. в разделе сопоставления типов данных SQL Server.For more information and a table that that describes the data type mappings between SQL Server and .NET Framework data types, see SQL Server Data Type Mappings.

В SQL Server 2008 появились новые типы данных, разработанные для удовлетворения бизнес-потребностей по работе с датами и временем, структурированными, частично структурированными и неструктурированными данными.SQL Server 2008 introduces new data types that are designed to meet business needs to work with date and time, structured, semi-structured, and unstructured data. Новые типы данных описаны в электронной документации по SQL Server 2008.These are documented in SQL Server 2008 Books Online.

Типы данных SQL Server, которые можно использовать в приложениях, зависят от используемой версии SQL Server.The SQL Server data types that are available for use in your application depends on the version of SQL Server that you are using. Дополнительные сведения см. в электронной документации для соответствующей версии SQL Server в приведенной ниже таблице.For more information, see the relevant version of SQL Server Books Online in the following table.

Электронная документация по SQL ServerSQL Server Books Online

  1. Типы данных (ядро СУБД)Data Types (Database Engine)

В этом разделеIn This Section

Типы SqlType и набор данныхSqlTypes and the DataSetОписывается поддержка типов для объекта SqlTypes в объекте DataSet.Describes type support for SqlTypes in the DataSet.

Обработка значений NULLHandling Null ValuesДемонстрируется работа со значениями NULL и тройственной логикой.Demonstrates how to work with null values and three-valued logic.

Сравнение значений идентификатора GUID и uniqueidentifierComparing GUID and uniqueidentifier ValuesДемонстрируется работа со значениями GUID и uniqueidentifier в SQL Server и .NET Framework.Demonstrates how to work with GUID and uniqueidentifier values in SQL Server and the .NET Framework.

Данные даты и времениDate and Time DataОписывается использование новых типов данных даты и времени, появившихся в SQL Server 2008.Describes how to use the new date and time data types introduced in SQL Server 2008.

Большие определяемые пользователем типыLarge UDTsДемонстрируется извлечение данных из определяемых пользователем типов данных большого размера, появившихся в SQL Server 2008.Demonstrates how to retrieve data from large value UDTs introduced in SQL Server 2008.

Данные XML в SQL ServerXML Data in SQL ServerОписание работы с данными XML, извлеченными из SQL Server.Describes how to work with XML data retrieved from SQL Server.

СсылкаReference

DataSetОписывает класс DataSet и все его члены.Describes the DataSet class and all of its members.

System.Data.SqlTypesОписывает пространство имен SqlTypes и все его элементы.Describes the SqlTypes namespace and all of its members.

SqlDbTypeОписывает перечисление SqlDbType и все его члены.Describes the SqlDbType enumeration and all of its members.

DbTypeОписывает перечисление DbType и все его члены.Describes the DbType enumeration and all of its members.

См. такжеSee Also

Сопоставления типов данных SQL ServerSQL Server Data Type MappingsНастройка параметров и типы данных параметровConfiguring Parameters and Parameter Data TypesВозвращающие табличное значение параметрыTable-Valued ParametersДвоичные данные и данные большого объема SQL ServerSQL Server Binary and Large-Value DataЦентр разработчиков наборов данных и управляемых поставщиков ADO.NETADO.NET Managed Providers and DataSet Developer Center

docs.microsoft.com

Управляемое сопоставление типов данных (SQL Server Compact)

Эта документация перемещена в архив и не поддерживается.

Microsoft SQL Server Compact 4.0 поддерживает не все типы данных .NET. При осуществлении доступа к данным с использованием ADO.NET SQL Server Compact 4.0 преобразует неподдерживаемые типы к поддерживаемым.

В таблице отображено сопоставление типов данных между SQL Server Compact 4.0 и поставщиком данных .NET.

Тип данных .NET

Тип данных SQL Server Compact

binary

varbinary

boolean

bit

byte

tinyint

byte[]

varbinary

datetime

datetime

decimal

numeric

double

float

guid

uniqueidentifier

image

image

int16

smallint

int32

int

int64

bigint

SqlBinary

varbinary

SqlBoolean

bit

SqlByte

tinyint

SqlDecimal¹

numeric

SqlDateTime

datetime

SqlDouble

float

SqlGuid

uniqueidentifier

SqlInt16

smallint

SqlInt32

int

SqlInt64

bigint

SqlMoney

money

SqlSingle

real

SqlString

nvarchar

single

real

string

nvarchar

¹ SQL Server Compact 4.0 поддерживает тип данных SqlDecimal размером не более 96 бит. При превышении этого размера в SQL Server Compact возникает ошибка исключения переполнения.

Справочник
Другие ресурсы

technet.microsoft.com