이들은 ODBC 이스케이프 시퀀스입니다. 자세한 내용은 Date, Time, and Timestamp Escape Sequences을 참조하십시오.
uniqueidentifiers
SELECT {guid '00000000-0000-0000-0000-000000000000'}
유사한 구문도있다,
뿐만 아니라 프로 시저 호출 및 링크를 상세하게 다른 구조.
나머지 질문에 대해서는 정수 리터럴을 bigint
또는 SQL Server에서 리터럴에 데이터 유형을 할당하는 데 영향을 미치는 모든 방법을 나열하는 특정 리소스를 처리하는 방법을 알지 못합니다. 아래에는 몇 가지 방법이 있습니다.
;WITH cte(thing) AS
(
SELECT CAST(1 AS SQL_VARIANT) UNION ALL
SELECT $1 UNION ALL
SELECT 1e0 UNION ALL
SELECT 1.0000 UNION ALL
SELECT 2147483648 UNION ALL
SELECT {ts '2011-09-15 01:23:56.123'} UNION ALL
SELECT {d '2011-09-15'} UNION ALL
SELECT { t '13:33:41' } UNION ALL
SELECT {guid '00000000-0000-0000-0000-000000000000'} UNION ALL
SELECT 'Foo' UNION ALL
SELECT N'Foo'
)
SELECT thing,
sql_variant_property(thing,'basetype') AS basetype,
sql_variant_property(thing,'precision') AS precision,
sql_variant_property(thing,'scale') AS scale,
sql_variant_property(thing,'maxlength') AS maxlength
FROM cte
반환
thing basetype precision scale maxlength
------------------------------ ------------------- ----------- ------ ---------
1 int 10 0 4
1.00 money 19 4 8
1 float 53 0 8
1.0000 numeric 5 4 5
2147483648 numeric 10 0 5
2011-09-15 01:23:56.123 datetime 23 3 8
2011-09-15 00:00:00.000 datetime 23 3 8
2011-09-15 13:33:41.000 datetime 23 3 8
00000000-0000-0000-0000-000000 uniqueidentifier 0 0 16
Foo varchar 0 0 3
Foo nvarchar 0 0 6
는 시도''{ 'i'9999-12-31}을 선택합니다. 보시다시피, '나는'ODBC 날짜/시간 확장을위한 옵션이 아니라는 오류가 있습니다. 이런 식으로 google을 시도하십시오 – rabudde
이것은 ODBC datetime 형식으로 알려져 있습니다. –