Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Къдрави скоби в T-SQL

Това са ODBC escape последователности. Вижте Escape Sequences за дата, час и времеви клеймо за повече подробности.

Също така има подобен синтаксис за уникални идентификатори

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server Express Backup база данни | Как да планирате автоматизиране и почистване на SQL Express Backup

  2. Как да генерирате DDL скриптове (Създаване) от SQL Server Management Studio (SSMS) - SQL Server / TSQL урок, част 17

  3. Защо SQL Server губи една милисекунда?

  4. Какви са плюсовете и минусите на запазването на SQL в Stored Procs срещу Code

  5. Отмяна с име на колона