Правила ввода значений поиска (визуальные инструменты базы данных)
применимо к:SQL Server
В этом разделе рассматриваются соглашения, которые необходимо использовать при вводе следующих типов литеральных значений для условия поиска:
Текстовые значения
Числовые значения
Даты
Логические значения
Заметка
Сведения в этом разделе основаны на правилах для стандартного SQL-92. Однако каждая база данных может реализовать SQL собственным образом. Поэтому приведенные здесь рекомендации могут не применяться в каждом случае. Если у вас есть вопросы о вводе значений поиска для определенной базы данных, см. документацию для используемой базы данных.
Поиск текстовых значений
Следующие рекомендации применяются при вводе текстовых значений в условия поиска:
Кавычки Заключать текстовые значения в одинарные кавычки, как в этом примере для фамилии:
'Smith'
Если вы вводите условие поиска в области условий , вы можете просто ввести текстовое значение, а конструктор запросов и представлений автоматически помещает в него одинарные кавычки.
Заметка
В некоторых базах данных термины в одинарных кавычках интерпретируются как литеральные значения, в то время как термины в двойных кавычках интерпретируются как объекты базы данных, такие как столбцы или ссылки на таблицы. Таким образом, даже если конструктор запросов и представлений может принимать термины в двойных кавычках, он может интерпретировать их по-разному, чем ожидалось.
Внедрение апострофов Если данные, которые вы ищете, содержат одну кавычку (апостроф), можно ввести две одинарные кавычки, чтобы указать, что одинарная кавычка используется как литеральное значение, а не разделитель. Например, следующее условие выполняет поиск значения "Swann's Way:"
='Swann''s Way'
Ограничения на длину Не превышайте максимальную длину SQL-инструкции для вашей базы данных при вводе длинных строк данных.
Чувствительность к регистру Следуйте правилам чувствительности к регистру для используемой базы данных. Используемая база данных определяет, учитывает ли поиск текста регистр. Например, некоторые базы данных интерпретируют оператор "=" как обозначающий точное совпадение с учетом регистра, а другие допускают совпадения с любыми сочетаниями заглавных и строчных символов.
Если вы не уверены, используется ли в базе данных поиск с учетом регистра, можно использовать функции UPPER или LOWER в условии поиска для преобразования регистра данных поиска, как показано в следующем примере:
WHERE UPPER(lname) = 'SMITH'
Поиск числовых значений
Следующие рекомендации применяются при вводе числовых значений в условиях поиска:
кавычки не заключайте цифры в кавычки.
нечисловые символы Не включать нечисловые символы, кроме десятичного разделителя (как определено в диалоговом окне региональных параметров панели управления Windows) и отрицательный знак (-). Не включать символы группировки цифр (например, запятую между тысячами) или символы валют.
десятичные знаки Если вы вводите целые числа, можно включить десятичный знак, будь то значение, которое вы ищете, является целым или реальным числом.
Научная нотация Можно вводить очень большие или очень маленькие числа с помощью научной нотации, например:
> 1.23456e-9
Поиск по датам
Формат, используемый для ввода дат, зависит от используемой базы данных и в какой области конструктора запросов и представлений вы вводите дату.
Заметка
Если вы не знаете, какой формат использует источник данных, введите дату в столбец фильтра области условий в любом формате, знакомом вам. Конструктор преобразует большинство таких записей в соответствующий формат.
Конструктор запросов и представлений может работать со следующими форматами дат:
для конкретного языкового стандарта Формат, указанный для дат в диалоговом окне "Свойства региональных параметров Windows".
для конкретной базы данных любой формат, понятный базой данных.
стандартная дата ANSI — формат, который использует фигурные скобки, маркер 'd' для обозначения даты и строку даты, как показано в следующем примере:
{ d '1990-12-31' }
стандартное время даты и времени ANSI Аналогично стандартной дате ANSI, но использует "ts" вместо "d" и добавляет часы, минуты и секунды к дате (с использованием 24-часовых часов), как в этом примере для 31 декабря 1990 года:
{ ts '1990-12-31 00:00:00' }
Как правило, стандартный формат даты ANSI используется с базами данных, представляющими даты с использованием истинного типа данных даты. В отличие от этого, формат даты и времени используется с базами данных, которые поддерживают соответствующий тип данных.
В следующей таблице приведен формат даты, который можно использовать в разных панелях конструктора запросов и представлений.
Поиск логических значений
Формат логических данных зависит от базы данных к базе данных. Очень часто значение False хранится как ноль (0). Значение True чаще всего сохраняется как 1 и иногда как -1. Следующие рекомендации применяются при вводе логических значений в условиях поиска:
Чтобы найти значение False, используйте ноль, как показано в следующем примере:
SELECT * FROM authors WHERE contract = 0
Если вы не уверены, какой формат следует использовать при поиске значения True, попробуйте использовать 1, как показано в следующем примере:
SELECT * FROM authors WHERE contract = 1
Кроме того, можно расширить область поиска, выполнив поиск любого ненулевого значения, как показано в следующем примере:
SELECT * FROM authors WHERE contract <> 0
См. также
укажите критерии поиска (визуальные инструменты для баз данных)