Являются ли хранимые процедуры SQL чувствительными к регистру?

StackOverflow https://stackoverflow.com/questions/508739

Вопрос

например...

ALTER PROCEDURE [dbo].[Reports_Dashboard_Get_Sav]   
    -- Add the parameters for the stored procedure here
    @startDate datetime,
    @endDate datetime,
    @companyID int=null

set @days=datediff(m,@startdate,@enddate)
if (@days)=0 
    set @days=1

Это не мой код, но если он чувствителен к регистру, то @days не будет рассчитываться правильно, поскольку переменные startDate/startdate и endDate/enddate не совпадают...

Это было полезно?

Решение

Это может быть так, в зависимости от параметров сортировки вашей базы данных.Когда вы устанавливаете SQL Server и выбираете параметры сортировки по умолчанию, вы заметите, что есть флажок «чувствительность к регистру».Некоторые параметры сортировки чувствительны к регистру и повлияют на ваши запросы (и хранимые процедуры).

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

Другие советы

Нет.По крайней мере, не T-SQL...

Насколько я помню, сами команды SQL не чувствительны к регистру, я часто видел их написанными в нижнем регистре.Я почти уверен, что остальное также нечувствительно к регистру, учитывая, что это расширение спецификации T-SQL.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top