Типы Данных Sql Server 2000

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

Встроенные типы данных

SQL Server 2000 распознает следующие встроенные типы данных:

Типы данных

Описание

bigint

Целочисленные данные от -2^63 до 2^63-1.

интервал

Целочисленные данные от -2^31 до 2^31 - 1

smallint

Целочисленные данные от -2^15 до 2^15 - 1

крошечныйинт

Целочисленные данные от 0 до 255

кусочек

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

десятичная дробь

Фиксированная точность и масштаб числовых данных от -10^38 +1 до 10^38 -1.

числовой

Фиксированная точность и масштаб числовых данных от -10^38 +1 до 10^38 -1.

деньги

Значения денежных данных от -2^63 до 2^63 - 1

мелкие деньги

Значения денежных данных от -214 748,3648 до +214 748,3647.

плавать

Числовые данные с плавающей точностью от -1,79E + 308 до 1,79E + 308.

настоящий

Числовые данные с плавающей точностью от -3,40E + 38 до 3,40E + 38.

дата и время

Данные о дате и времени с 1 января 1753 г. по 31 декабря 9999 г.,

с точностью 3,33 миллисекунды

smalldatetime

Данные о дате и времени с 1 января 1900 г. по 6 июня 2079 г.

с точностью до одной минуты

голец

Символьные данные фиксированной длины с максимальной длиной 8000 символов.

варчар

Данные переменной длины, максимум 8000 символов.

текст

Данные переменной длины с максимальной длиной 2^31 – 1 символ.

Нчар

Данные Unicode фиксированной длины с максимальной длиной 4000 символов.

нварчар

Данные Unicode переменной длины с максимальной длиной 4000 символов.

nтекст

Данные Unicode переменной длины с максимальной длиной 2^30 – 1 символ.

двоичный

Двоичные данные фиксированной длины с максимальной длиной 8000 байт.

варбинарий

Двоичные данные переменной длины с максимальной длиной 8000 байт.

изображение

Двоичные данные переменной длины с максимальной длиной 2^31 – 1 байт.

курсор

Ссылка на курсор

sql_variant

Тип данных, в котором хранятся значения различных типов данных.

кроме текста, ntext, отметки времени и sql_variant

стол

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

временная метка

Уникальный номер во всей базе данных, который обновляется каждый раз.

строка обновляется

уникальный идентификатор

Глобальный уникальный идентификатор

Bigint, sql_variant и table — новые возможности SQL Server 2000.

Пользовательские типы данных

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

sp_addtype имя_типа данных, основанный тип данных, 'NULL'/'NOT NULL'

Как выбрать подходящий тип данных

SQL Server хранит данные на страницах данных размером 8 КБ (8192 байта). Система использует некоторые из них. Иногда система использует только 8060 байт, доступных для хранения пользовательских данных. Учитывайте размер строки данных в ваших таблицах. Если строки большие, убедитесь, что кратные им строки удобно помещаются на странице данных, чтобы не тратить пространство на странице. Это сокращает накладные расходы на подкачку диска при доступе к данным. Вы хотите максимизировать количество строк данных, которые поместятся на странице. Этого можно добиться как путем разделения таблиц, так и путем выбора наименьшего типа данных, подходящего для ваших данных. .

Вы используете целочисленные данные, данные; учтите, что тип данных tinyint будет содержать данные, которые поместятся в один байт памяти. Поэтому, если диапазон всех данных в вашем поле (или переменной) находится между 0 и 255, используйте тип данных tinyint. Если диапазон находится между -32 768 и 32 767, используйте тип данных smallint. И если вам нужно хранить целочисленные данные от -2 147 483 648 до 2 147 483 647, используйте тип данных int.

Аналогично и с маленькими деньгами. Если небольшие деньги. Если ваш диапазон значений находится между -214748,3648 и 214 748,3647, используйте тип данных smallmoney.

Используйте тип данных smalldatetime вместо типа данных datetime, если вам нужно хранить данные даты и времени с 1 января 1900 года по 6 июня 2079 года с точностью до минуты.

По возможности отдавайте предпочтение varchar.nvarchar тексту/ntext, поскольку поля текста и изображения хранятся отдельно, что приводит к дополнительной разбивке по страницам. И предпочитайте типы данных char/varchar типам данных nchar/nvarchar, поскольку типы n требуют вдвое больше места для хранения. Типы n используются в основном для данных Юникода.

Ресурсы

Учебное пособие: SQL 7 и файлы базы данных.

Это полезное руководство по SQL и файлам баз данных.

Информация: Полная информация по SQL.

Этот ресурс предоставляет полную информацию по SQL.

Консультанты по SQL-серверу Метро Нью-Йорка/Нью-Джерси

Мы специализируемся на индивидуальном программном обеспечении баз данных. Позвоните нам для бесплатной консультации (973) 635 0080 или напишите нам по адресу paladn.com.




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

Вот обзор встроенных типов данных, распознаваемых SQL Server 2000:

  1. bigint: хранит целочисленные данные в диапазоне от -2^63 до 2^63-1.
  2. int: хранит целочисленные данные в диапазоне от -2^31 до 2^31 - 1.
  3. smallint: хранит целочисленные данные в диапазоне от -2^15 до 2^15 - 1.
  4. tinyint: хранит целочисленные данные в диапазоне от 0 до 255.
  5. бит: хранит целочисленные данные со значением 1 или 0.
  6. десятичный/числовой: хранит числовые данные фиксированной точности и масштаба в диапазоне от -10^38 +1 до 10^38 -1.
  7. деньги: хранит значения денежных данных в диапазоне от -2^63 до 2^63 - 1.
  8. smallmoney: хранит значения денежных данных в диапазоне от -214 748,3648 до +214 748,3647.
  9. float: хранит данные чисел с плавающей точностью в диапазоне от -1,79E + 308 до 1,79E + 308.
  10. Real: хранит числовые данные с плавающей точностью в диапазоне от -3,40E + 38 до 3,40E + 38.
  11. datetime: хранит данные даты и времени с 1 января 1753 года по 31 декабря 9999 года с точностью 3,33 миллисекунды.
  12. smalldatetime: хранит данные о дате и времени с 1 января 1900 года по 6 июня 2079 года с точностью до одной минуты.
  13. char: хранит символьные данные фиксированной длины с максимальной длиной 8000 символов.
  14. varchar: хранит символьные данные переменной длины с максимальной длиной 8000 символов.
  15. текст: хранит символьные данные переменной длины с максимальной длиной 2^31 - 1 символа.
  16. nchar: хранит данные Unicode фиксированной длины с максимальной длиной 4000 символов.
  17. nvarchar: хранит данные Юникода переменной длины с максимальной длиной 4000 символов.
  18. ntext: хранит данные Unicode переменной длины с максимальной длиной 2 ^ 30 - 1 символов.
  19. двоичный: хранит двоичные данные фиксированной длины с максимальной длиной 8000 байт.
  20. varbinary: хранит двоичные данные переменной длины с максимальной длиной 8000 байт.
  21. изображение: хранит двоичные данные переменной длины с максимальной длиной 2^31 — 1 байт.
  22. курсор: ссылка на курсор.
  23. sql_variant: тип данных, в котором хранятся значения различных типов данных, кроме text, ntext, timestamp и sql_variant.
  24. таблица: специальный тип данных, используемый для хранения набора результатов для последующей обработки.
  25. временная метка: уникальный номер в масштабе всей базы данных, который обновляется каждый раз при обновлении строки.
  26. uniqueidentifier: глобальный уникальный идентификатор.

Важно отметить, что bigint, sql_variant и table — это новые типы данных, представленные в SQL Server 2000.

В дополнение к встроенным типам данных SQL Server 2000 позволяет пользователям создавать определяемые пользователем типы данных. Эти типы могут обеспечить более описательное представление типов значений, содержащихся в объекте, что упрощает программистам работу с данными и их документирование. Пользовательские типы данных основаны на встроенных типах и могут быть настроены с помощью заранее запрограммированных значений по умолчанию, проверок, ограничений и т. д. Чтобы создать пользовательский тип данных, используется хранимая процедура sp_addtype, определяющая имя типа данных, базовый тип данных и то, допускает ли она значения NULL или нет.

При выборе подходящего типа данных очень важно учитывать размер строк данных в ваших таблицах. SQL Server хранит данные на страницах данных, размер которых обычно составляет 8 КБ (8192 байта), при этом для пользовательских данных доступно 8060 байт. Оптимизируя размер строк, вы можете максимизировать количество строк, помещающихся на странице данных, сокращая подкачку диска и повышая производительность. Рекомендуется выбрать наименьший тип данных, который может вместить ваши данные, чтобы минимизировать требования к хранению и оптимизировать использование ресурсов.

Например, если вы работаете с целочисленными данными и диапазон значений находится между 0 и 255, уместно использовать тип данных tinyint, который хранит значения в одном байте. Если диапазон находится между -32 768 и 32 767, следует использовать тип данных smallint. Для целочисленных данных в диапазоне от -2 147 483 648 до 2 147 483 647 подходит тип данных int.

Аналогично, для денежных значений в диапазоне от -214 748,3648 до 214 748,3647 рекомендуется использовать тип данных smallmoney.

При хранении данных о дате и времени рассмотрите возможность использования типа данных smalldatetime, если для вашего приложения достаточен диапазон от 1 января 1900 года до 6 июня 2079 года с точностью до минуты.

Что касается символьных данных, желательно, когда это возможно, отдавать предпочтение varchar и nvarchar тексту и ntext. Поля текста и изображения хранятся отдельно, что может привести к дополнительной разбивке по страницам и снижению производительности. Кроме того, типы данных nchar и nvarchar следует использовать в первую очередь для хранения данных в Юникоде, поскольку они требуют вдвое больше места для хранения по сравнению с их аналогами, не поддерживающими Юникод.

В заключение отметим, что SQL Server 2000 предлагает полный набор встроенных типов данных для удовлетворения различных требований к данным. Выбор подходящего типа данных имеет решающее значение для эффективного распределения памяти и оптимальной производительности. Учитывая размер строк данных и выбирая наименьший тип данных, вмещающий данные, вы можете максимизировать использование ресурсов и повысить общую производительность базы данных.

Ресурсы:

  • Учебник: SQL 7 и файлы баз данных: полезный учебник по SQL и файлам баз данных.
  • Информация: Полная информация по SQL: Комплексный ресурс, предоставляющий полную информацию по SQL.

Консультанты по SQL-серверу Метро Нью-Йорка/Нью-Джерси:
Если вам нужна помощь с пользовательским программным обеспечением для баз данных и консультационными услугами, вы можете обратиться в компанию Metro NY/NJ SQL Server Consultants. Они специализируются на предоставлении индивидуальных решений для нужд вашей базы данных. Вы можете связаться с ними по телефону (973) 635 0080 или написать им по адресу paladn.com.

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

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2011-07-23 05:15:35
Баллов опыта: 552966
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.