tiny_tds 1.0.4 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. checksums.yaml +5 -5
  2. data/.codeclimate.yml +20 -0
  3. data/.gitattributes +1 -0
  4. data/.github/workflows/ci.yml +590 -0
  5. data/.gitignore +2 -0
  6. data/.rubocop.yml +31 -0
  7. data/{CHANGELOG → CHANGELOG.md} +133 -26
  8. data/Gemfile +1 -5
  9. data/ISSUE_TEMPLATE.md +36 -3
  10. data/README.md +147 -85
  11. data/Rakefile +51 -94
  12. data/VERSION +1 -1
  13. data/docker-compose.yml +34 -0
  14. data/ext/tiny_tds/client.c +149 -67
  15. data/ext/tiny_tds/client.h +11 -5
  16. data/ext/tiny_tds/extconf.rb +144 -283
  17. data/ext/tiny_tds/extconsts.rb +4 -11
  18. data/ext/tiny_tds/result.c +68 -50
  19. data/ext/tiny_tds/tiny_tds_ext.c +4 -1
  20. data/lib/tiny_tds/bin.rb +44 -40
  21. data/lib/tiny_tds/client.rb +63 -55
  22. data/lib/tiny_tds/error.rb +0 -3
  23. data/lib/tiny_tds/gem.rb +23 -0
  24. data/lib/tiny_tds/result.rb +0 -3
  25. data/lib/tiny_tds.rb +37 -32
  26. data/{ports/patches/freetds/1.00 → patches/freetds/1.00.27}/0001-mingw_missing_inet_pton.diff +4 -4
  27. data/patches/freetds/1.00.27/0002-Don-t-use-MSYS2-file-libws2_32.diff +28 -0
  28. data/patches/libiconv/1.14/1-avoid-gets-error.patch +17 -0
  29. data/setup_cimgruby_dev.sh +25 -0
  30. data/start_dev.sh +21 -0
  31. data/tasks/native_gem.rake +16 -0
  32. data/tasks/package.rake +6 -0
  33. data/tasks/ports.rake +24 -0
  34. data/tasks/test.rake +7 -0
  35. data/test/bin/install-freetds.sh +18 -0
  36. data/test/bin/install-mssql.ps1 +42 -0
  37. data/test/bin/install-mssqltools.sh +9 -0
  38. data/test/bin/install-openssl.sh +18 -0
  39. data/test/bin/restore-from-native-gem.ps1 +10 -0
  40. data/test/bin/setup_tinytds_db.sh +7 -0
  41. data/test/bin/setup_volume_permissions.sh +10 -0
  42. data/test/client_test.rb +161 -112
  43. data/test/gem_test.rb +100 -0
  44. data/test/result_test.rb +293 -313
  45. data/test/schema_test.rb +369 -395
  46. data/test/sql/db-create.sql +18 -0
  47. data/test/sql/db-login.sql +38 -0
  48. data/test/test_helper.rb +116 -85
  49. data/test/thread_test.rb +22 -31
  50. data/tiny_tds.gemspec +27 -24
  51. metadata +109 -56
  52. data/appveyor.yml +0 -51
  53. data/test/appveyor/dbsetup.ps1 +0 -27
  54. data/test/appveyor/dbsetup.sql +0 -9
  55. data/test/benchmark/query.rb +0 -77
  56. data/test/benchmark/query_odbc.rb +0 -106
  57. data/test/benchmark/query_tinytds.rb +0 -126
  58. data/test/schema/sqlserver_2000.sql +0 -140
  59. data/test/schema/sqlserver_2005.sql +0 -140
  60. data/test/schema/sqlserver_2014.sql +0 -140
  61. data/test/schema/sybase_ase.sql +0 -138
  62. /data/bin/{defncopy → defncopy-ttds} +0 -0
  63. /data/bin/{tsql → tsql-ttds} +0 -0
  64. /data/test/schema/{sqlserver_2008.sql → sqlserver_2017.sql} +0 -0
@@ -1,140 +0,0 @@
1
-
2
- /*
3
-
4
- * Binary Data - Our test binary data is a 1 pixel gif. The basic (raw) data is below. Quoting this data
5
- would involve this (encode) method and be (encoded) with the 0x prefix for raw SQL. In other clients the
6
- (raw_db) value without the 0x prefix would need to be (packed) again yield the original (raw) value.
7
-
8
- (raw) - "GIF89a\001\000\001\000\221\000\000\377\377\377\377\377\377\376\001\002\000\000\000!\371\004\004\024\000\377\000,\000\000\000\000\001\000\001\000\000\002\002D\001\000;"
9
- (encode) - "0x#{raw.unpack("H*")[0]}"
10
- (encoded) - "0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
11
- (raw_db) - "47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
12
- (packed) - [raw_db].pack('H*')
13
-
14
- */
15
-
16
- CREATE TABLE [dbo].[datatypes] (
17
- [id] [int] NOT NULL IDENTITY(1,1) PRIMARY KEY,
18
- [bigint] [bigint] NULL,
19
- [binary_50] [binary](50) NULL,
20
- [bit] [bit] NULL,
21
- [char_10] [char](10) NULL,
22
- -- [date] [date] NULL,
23
- [datetime] [datetime] NULL,
24
- -- [datetime2_7] [datetime2](7) NULL,
25
- -- [datetime2_2] [datetime2](2) NULL,
26
- -- [datetimeoffset_2] [datetimeoffset](2) NULL,
27
- -- [datetimeoffset_7] [datetimeoffset](7) NULL,
28
- [decimal_9_2] [decimal](9, 2) NULL,
29
- [decimal_16_4] [decimal](16, 4) NULL,
30
- [float] [float] NULL,
31
- -- [geography] [geography] NULL,
32
- -- [geometry] [geometry] NULL,
33
- -- [hierarchyid] [hierarchyid] NULL,
34
- [image] [image] NULL,
35
- [int] [int] NULL,
36
- [money] [money] NULL,
37
- [nchar_10] [nchar](10) NULL,
38
- [ntext] [ntext] NULL,
39
- [numeric_18_0] [numeric](18, 0) NULL,
40
- [numeric_36_2] [numeric](36, 2) NULL,
41
- [nvarchar_50] [nvarchar](50) NULL,
42
- -- [nvarchar_max] [nvarchar](max) NULL,
43
- [real] [real] NULL,
44
- [smalldatetime] [smalldatetime] NULL,
45
- [smallint] [smallint] NULL,
46
- [smallmoney] [smallmoney] NULL,
47
- [text] [text] NULL,
48
- -- [time_2] [time](2) NULL,
49
- -- [time_7] [time](7) NULL,
50
- [timestamp] [timestamp] NULL,
51
- [tinyint] [tinyint] NULL,
52
- [uniqueidentifier] [uniqueidentifier] NULL,
53
- [varbinary_50] [varbinary](50) NULL,
54
- -- [varbinary_max] [varbinary](max) NULL,
55
- [varchar_50] [varchar](50) NULL
56
- -- [varchar_max] [varchar](max) NULL,
57
- -- [xml] [xml] NULL
58
- ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
59
-
60
- SET IDENTITY_INSERT [datatypes] ON
61
-
62
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 11, -9223372036854775807 )
63
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 12, 9223372036854775806 )
64
- INSERT INTO [datatypes] ([id], [binary_50]) VALUES ( 21, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
65
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 31, 1 )
66
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 32, 0 )
67
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 41, '1234567890' )
68
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 42, '12345678' )
69
- -- INSERT INTO [datatypes] ([id], [date]) VALUES ( 51, '0001-01-01' )
70
- -- INSERT INTO [datatypes] ([id], [date]) VALUES ( 52, '9999-12-31' )
71
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 61, '1753-01-01T00:00:00.000' )
72
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 62, '9999-12-31T23:59:59.997' )
73
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 63, '2010-01-01T12:34:56.123' )
74
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 71, '0001-01-01 00:00:00.0000000' )
75
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 72, '1984-01-24 04:20:00.0000000' )
76
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 73, '9999-12-31 23:59:59.9999999' )
77
- -- INSERT INTO [datatypes] ([id], [datetime2_2]) VALUES ( 74, '9999-12-31 23:59:59.123456789' )
78
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 81, '1984-01-24T04:20:00.1234567-08:00' ) -- 1984-01-24 04:20:00.00 -08:00
79
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 82, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.00 +00:00
80
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 83, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.99 +00:00
81
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 84, '1984-01-24T04:20:59.1234567-08:00' ) -- 1984-01-24 04:20:59.1234567 -08:00
82
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 85, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.0000000 +00:00
83
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 86, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.9999999 +00:00
84
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 91, 12345.01 )
85
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 92, 1234567.89 )
86
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 93, 0.0 )
87
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 94, 123456789012.3456 )
88
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 101, 123.00000001 )
89
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 102, 0.0 )
90
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 103, 123.45 )
91
- -- INSERT INTO [datatypes] ([id], [geography]) VALUES ( 111, geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326) ) -- 0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0
92
- -- INSERT INTO [datatypes] ([id], [geometry]) VALUES ( 121, geometry::STGeomFromText('LINESTRING (100 100, 20 180, 180 180)', 0) ) -- 0x0000000001040300000000000000000059400000000000005940000000000000344000000000008066400000000000806640000000000080664001000000010000000001000000FFFFFFFF0000000002
93
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 131, CAST('/1/' AS hierarchyid) ) -- 0x58
94
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 132, CAST('/2/' AS hierarchyid) ) -- 0x68
95
- INSERT INTO [datatypes] ([id], [image]) VALUES ( 141, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
96
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 151, -2147483647 )
97
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 152, 2147483646 )
98
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 161, 4.20 )
99
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 162, -922337203685477.5807 )
100
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 163, 922337203685477.5806 )
101
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 171, N'1234567890' )
102
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 172, N'123456åå' )
103
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 173, N'abc123' )
104
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 181, N'test ntext' )
105
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 182, N'test ntext åå' )
106
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 191, 191 )
107
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 192, 123456789012345678 )
108
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 193, 12345678901234567890.01 )
109
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 194, 123.46 )
110
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 201, N'test nvarchar_50' )
111
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 202, N'test nvarchar_50 åå' )
112
- -- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 211, N'test nvarchar_max' )
113
- -- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 212, N'test nvarchar_max åå' )
114
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 221, 123.45 )
115
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 222, 0.0 )
116
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 223, 0.00001 )
117
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 231, '1901-01-01T15:45:00.000' ) -- 1901-01-01 15:45:00
118
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 232, '2078-06-05T04:20:00.000' ) -- 2078-06-05 04:20:00
119
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 241, -32767 )
120
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 242, 32766 )
121
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 251, 4.20 )
122
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 252, -214748.3647 )
123
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 253, 214748.3646 )
124
- INSERT INTO [datatypes] ([id], [text]) VALUES ( 271, 'test text' )
125
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 281, '15:45:00.709714966' ) -- 15:45:00.71
126
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 282, '04:20:00.288321545' ) -- 04:20:00.29
127
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 283, '15:45:00.709714966' ) -- 15:45:00.709714900
128
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 284, '04:20:00.288321545' ) -- 04:20:00.288321500
129
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 301, 0 )
130
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 302, 255 )
131
- INSERT INTO [datatypes] ([id], [uniqueidentifier]) VALUES ( 311, NEWID() )
132
- INSERT INTO [datatypes] ([id], [varbinary_50]) VALUES ( 321, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
133
- -- INSERT INTO [datatypes] ([id], [varbinary_max]) VALUES ( 331, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
134
- INSERT INTO [datatypes] ([id], [varchar_50]) VALUES ( 341, 'test varchar_50' )
135
- -- INSERT INTO [datatypes] ([id], [varchar_max]) VALUES ( 351, 'test varchar_max' )
136
- -- INSERT INTO [datatypes] ([id], [xml]) VALUES ( 361, '<foo><bar>batz</bar></foo>' )
137
-
138
- SET IDENTITY_INSERT [datatypes] OFF
139
-
140
-
@@ -1,140 +0,0 @@
1
-
2
- /*
3
-
4
- * Binary Data - Our test binary data is a 1 pixel gif. The basic (raw) data is below. Quoting this data
5
- would involve this (encode) method and be (encoded) with the 0x prefix for raw SQL. In other clients the
6
- (raw_db) value without the 0x prefix would need to be (packed) again yield the original (raw) value.
7
-
8
- (raw) - "GIF89a\001\000\001\000\221\000\000\377\377\377\377\377\377\376\001\002\000\000\000!\371\004\004\024\000\377\000,\000\000\000\000\001\000\001\000\000\002\002D\001\000;"
9
- (encode) - "0x#{raw.unpack("H*")[0]}"
10
- (encoded) - "0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
11
- (raw_db) - "47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
12
- (packed) - [raw_db].pack('H*')
13
-
14
- */
15
-
16
- CREATE TABLE [dbo].[datatypes] (
17
- [id] [int] NOT NULL IDENTITY(1,1) PRIMARY KEY,
18
- [bigint] [bigint] NULL,
19
- [binary_50] [binary](50) NULL,
20
- [bit] [bit] NULL,
21
- [char_10] [char](10) NULL,
22
- -- [date] [date] NULL,
23
- [datetime] [datetime] NULL,
24
- -- [datetime2_7] [datetime2](7) NULL,
25
- -- [datetime2_2] [datetime2](2) NULL,
26
- -- [datetimeoffset_2] [datetimeoffset](2) NULL,
27
- -- [datetimeoffset_7] [datetimeoffset](7) NULL,
28
- [decimal_9_2] [decimal](9, 2) NULL,
29
- [decimal_16_4] [decimal](16, 4) NULL,
30
- [float] [float] NULL,
31
- -- [geography] [geography] NULL,
32
- -- [geometry] [geometry] NULL,
33
- -- [hierarchyid] [hierarchyid] NULL,
34
- [image] [image] NULL,
35
- [int] [int] NULL,
36
- [money] [money] NULL,
37
- [nchar_10] [nchar](10) NULL,
38
- [ntext] [ntext] NULL,
39
- [numeric_18_0] [numeric](18, 0) NULL,
40
- [numeric_36_2] [numeric](36, 2) NULL,
41
- [nvarchar_50] [nvarchar](50) NULL,
42
- [nvarchar_max] [nvarchar](max) NULL,
43
- [real] [real] NULL,
44
- [smalldatetime] [smalldatetime] NULL,
45
- [smallint] [smallint] NULL,
46
- [smallmoney] [smallmoney] NULL,
47
- [text] [text] NULL,
48
- -- [time_2] [time](2) NULL,
49
- -- [time_7] [time](7) NULL,
50
- [timestamp] [timestamp] NULL,
51
- [tinyint] [tinyint] NULL,
52
- [uniqueidentifier] [uniqueidentifier] NULL,
53
- [varbinary_50] [varbinary](50) NULL,
54
- [varbinary_max] [varbinary](max) NULL,
55
- [varchar_50] [varchar](50) NULL,
56
- [varchar_max] [varchar](max) NULL,
57
- [xml] [xml] NULL
58
- ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
59
-
60
- SET IDENTITY_INSERT [datatypes] ON
61
-
62
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 11, -9223372036854775807 )
63
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 12, 9223372036854775806 )
64
- INSERT INTO [datatypes] ([id], [binary_50]) VALUES ( 21, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
65
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 31, 1 )
66
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 32, 0 )
67
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 41, '1234567890' )
68
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 42, '12345678' )
69
- -- INSERT INTO [datatypes] ([id], [date]) VALUES ( 51, '0001-01-01' )
70
- -- INSERT INTO [datatypes] ([id], [date]) VALUES ( 52, '9999-12-31' )
71
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 61, '1753-01-01T00:00:00.000' )
72
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 62, '9999-12-31T23:59:59.997' )
73
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 63, '2010-01-01T12:34:56.123' )
74
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 71, '0001-01-01 00:00:00.0000000' )
75
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 72, '1984-01-24 04:20:00.0000000' )
76
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 73, '9999-12-31 23:59:59.9999999' )
77
- -- INSERT INTO [datatypes] ([id], [datetime2_2]) VALUES ( 74, '9999-12-31 23:59:59.123456789' )
78
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 81, '1984-01-24T04:20:00.1234567-08:00' ) -- 1984-01-24 04:20:00.00 -08:00
79
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 82, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.00 +00:00
80
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 83, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.99 +00:00
81
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 84, '1984-01-24T04:20:59.1234567-08:00' ) -- 1984-01-24 04:20:59.1234567 -08:00
82
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 85, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.0000000 +00:00
83
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 86, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.9999999 +00:00
84
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 91, 12345.01 )
85
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 92, 1234567.89 )
86
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 93, 0.0 )
87
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 94, 123456789012.3456 )
88
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 101, 123.00000001 )
89
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 102, 0.0 )
90
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 103, 123.45 )
91
- -- INSERT INTO [datatypes] ([id], [geography]) VALUES ( 111, geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326) ) -- 0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0
92
- -- INSERT INTO [datatypes] ([id], [geometry]) VALUES ( 121, geometry::STGeomFromText('LINESTRING (100 100, 20 180, 180 180)', 0) ) -- 0x0000000001040300000000000000000059400000000000005940000000000000344000000000008066400000000000806640000000000080664001000000010000000001000000FFFFFFFF0000000002
93
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 131, CAST('/1/' AS hierarchyid) ) -- 0x58
94
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 132, CAST('/2/' AS hierarchyid) ) -- 0x68
95
- INSERT INTO [datatypes] ([id], [image]) VALUES ( 141, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
96
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 151, -2147483647 )
97
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 152, 2147483646 )
98
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 161, 4.20 )
99
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 162, -922337203685477.5807 )
100
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 163, 922337203685477.5806 )
101
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 171, N'1234567890' )
102
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 172, N'123456åå' )
103
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 173, N'abc123' )
104
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 181, N'test ntext' )
105
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 182, N'test ntext åå' )
106
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 191, 191 )
107
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 192, 123456789012345678 )
108
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 193, 12345678901234567890.01 )
109
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 194, 123.46 )
110
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 201, N'test nvarchar_50' )
111
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 202, N'test nvarchar_50 åå' )
112
- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 211, N'test nvarchar_max' )
113
- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 212, N'test nvarchar_max åå' )
114
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 221, 123.45 )
115
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 222, 0.0 )
116
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 223, 0.00001 )
117
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 231, '1901-01-01T15:45:00.000Z' ) -- 1901-01-01 15:45:00
118
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 232, '2078-06-05T04:20:00.000Z' ) -- 2078-06-05 04:20:00
119
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 241, -32767 )
120
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 242, 32766 )
121
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 251, 4.20 )
122
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 252, -214748.3647 )
123
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 253, 214748.3646 )
124
- INSERT INTO [datatypes] ([id], [text]) VALUES ( 271, 'test text' )
125
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 281, '15:45:00.709714966' ) -- 15:45:00.71
126
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 282, '04:20:00.288321545' ) -- 04:20:00.29
127
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 283, '15:45:00.709714966' ) -- 15:45:00.709714900
128
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 284, '04:20:00.288321545' ) -- 04:20:00.288321500
129
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 301, 0 )
130
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 302, 255 )
131
- INSERT INTO [datatypes] ([id], [uniqueidentifier]) VALUES ( 311, NEWID() )
132
- INSERT INTO [datatypes] ([id], [varbinary_50]) VALUES ( 321, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
133
- INSERT INTO [datatypes] ([id], [varbinary_max]) VALUES ( 331, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
134
- INSERT INTO [datatypes] ([id], [varchar_50]) VALUES ( 341, 'test varchar_50' )
135
- INSERT INTO [datatypes] ([id], [varchar_max]) VALUES ( 351, 'test varchar_max' )
136
- INSERT INTO [datatypes] ([id], [xml]) VALUES ( 361, '<foo><bar>batz</bar></foo>' )
137
-
138
- SET IDENTITY_INSERT [datatypes] OFF
139
-
140
-
@@ -1,140 +0,0 @@
1
-
2
- /*
3
-
4
- * Binary Data - Our test binary data is a 1 pixel gif. The basic (raw) data is below. Quoting this data
5
- would involve this (encode) method and be (encoded) with the 0x prefix for raw SQL. In other clients the
6
- (raw_db) value without the 0x prefix would need to be (packed) again yield the original (raw) value.
7
-
8
- (raw) - "GIF89a\001\000\001\000\221\000\000\377\377\377\377\377\377\376\001\002\000\000\000!\371\004\004\024\000\377\000,\000\000\000\000\001\000\001\000\000\002\002D\001\000;"
9
- (encode) - "0x#{raw.unpack("H*")[0]}"
10
- (encoded) - "0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
11
- (raw_db) - "47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
12
- (packed) - [raw_db].pack('H*')
13
-
14
- */
15
-
16
- CREATE TABLE [dbo].[datatypes] (
17
- [id] [int] NOT NULL IDENTITY(1,1) PRIMARY KEY,
18
- [bigint] [bigint] NULL,
19
- [binary_50] [binary](50) NULL,
20
- [bit] [bit] NULL,
21
- [char_10] [char](10) NULL,
22
- [date] [date] NULL,
23
- [datetime] [datetime] NULL,
24
- [datetime2_7] [datetime2](7) NULL,
25
- [datetime2_2] [datetime2](2) NULL,
26
- [datetimeoffset_2] [datetimeoffset](2) NULL,
27
- [datetimeoffset_7] [datetimeoffset](7) NULL,
28
- [decimal_9_2] [decimal](9, 2) NULL,
29
- [decimal_16_4] [decimal](16, 4) NULL,
30
- [float] [float] NULL,
31
- [geography] [geography] NULL,
32
- [geometry] [geometry] NULL,
33
- [hierarchyid] [hierarchyid] NULL,
34
- [image] [image] NULL,
35
- [int] [int] NULL,
36
- [money] [money] NULL,
37
- [nchar_10] [nchar](10) NULL,
38
- [ntext] [ntext] NULL,
39
- [numeric_18_0] [numeric](18, 0) NULL,
40
- [numeric_36_2] [numeric](36, 2) NULL,
41
- [nvarchar_50] [nvarchar](50) NULL,
42
- [nvarchar_max] [nvarchar](max) NULL,
43
- [real] [real] NULL,
44
- [smalldatetime] [smalldatetime] NULL,
45
- [smallint] [smallint] NULL,
46
- [smallmoney] [smallmoney] NULL,
47
- [text] [text] NULL,
48
- [time_2] [time](2) NULL,
49
- [time_7] [time](7) NULL,
50
- [timestamp] [timestamp] NULL,
51
- [tinyint] [tinyint] NULL,
52
- [uniqueidentifier] [uniqueidentifier] NULL,
53
- [varbinary_50] [varbinary](50) NULL,
54
- [varbinary_max] [varbinary](max) NULL,
55
- [varchar_50] [varchar](50) NULL,
56
- [varchar_max] [varchar](max) NULL,
57
- [xml] [xml] NULL
58
- ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
59
-
60
- SET IDENTITY_INSERT [datatypes] ON
61
-
62
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 11, -9223372036854775807 )
63
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 12, 9223372036854775806 )
64
- INSERT INTO [datatypes] ([id], [binary_50]) VALUES ( 21, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
65
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 31, 1 )
66
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 32, 0 )
67
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 41, '1234567890' )
68
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 42, '12345678' )
69
- INSERT INTO [datatypes] ([id], [date]) VALUES ( 51, '0001-01-01' )
70
- INSERT INTO [datatypes] ([id], [date]) VALUES ( 52, '9999-12-31' )
71
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 61, '1753-01-01T00:00:00.000' )
72
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 62, '9999-12-31T23:59:59.997' )
73
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 63, '2010-01-01T12:34:56.123' )
74
- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 71, '0001-01-01 00:00:00.0000000' )
75
- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 72, '1984-01-24 04:20:00.0000000' )
76
- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 73, '9999-12-31 23:59:59.9999999' )
77
- INSERT INTO [datatypes] ([id], [datetime2_2]) VALUES ( 74, '9999-12-31 23:59:59.123456789' )
78
- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 81, '1984-01-24T04:20:00.1234567-08:00' ) -- 1984-01-24 04:20:00.00 -08:00
79
- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 82, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.00 +00:00
80
- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 83, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.99 +00:00
81
- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 84, '1984-01-24T04:20:59.1234567-08:00' ) -- 1984-01-24 04:20:59.1234567 -08:00
82
- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 85, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.0000000 +00:00
83
- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 86, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.9999999 +00:00
84
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 91, 12345.01 )
85
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 92, 1234567.89 )
86
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 93, 0.0 )
87
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 94, 123456789012.3456 )
88
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 101, 123.00000001 )
89
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 102, 0.0 )
90
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 103, 123.45 )
91
- INSERT INTO [datatypes] ([id], [geography]) VALUES ( 111, geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326) ) -- 0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0
92
- INSERT INTO [datatypes] ([id], [geometry]) VALUES ( 121, geometry::STGeomFromText('LINESTRING (100 100, 20 180, 180 180)', 0) ) -- 0x0000000001040300000000000000000059400000000000005940000000000000344000000000008066400000000000806640000000000080664001000000010000000001000000FFFFFFFF0000000002
93
- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 131, CAST('/1/' AS hierarchyid) ) -- 0x58
94
- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 132, CAST('/2/' AS hierarchyid) ) -- 0x68
95
- INSERT INTO [datatypes] ([id], [image]) VALUES ( 141, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
96
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 151, -2147483647 )
97
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 152, 2147483646 )
98
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 161, 4.20 )
99
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 162, -922337203685477.5807 )
100
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 163, 922337203685477.5806 )
101
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 171, N'1234567890' )
102
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 172, N'123456åå' )
103
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 173, N'abc123' )
104
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 181, N'test ntext' )
105
- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 182, N'test ntext åå' )
106
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 191, 191 )
107
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 192, 123456789012345678 )
108
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 193, 12345678901234567890.01 )
109
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 194, 123.46 )
110
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 201, N'test nvarchar_50' )
111
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 202, N'test nvarchar_50 åå' )
112
- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 211, N'test nvarchar_max' )
113
- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 212, N'test nvarchar_max åå' )
114
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 221, 123.45 )
115
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 222, 0.0 )
116
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 223, 0.00001 )
117
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 231, '1901-01-01T15:45:00.000Z' ) -- 1901-01-01 15:45:00
118
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 232, '2078-06-05T04:20:00.000Z' ) -- 2078-06-05 04:20:00
119
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 241, -32767 )
120
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 242, 32766 )
121
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 251, 4.20 )
122
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 252, -214748.3647 )
123
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 253, 214748.3646 )
124
- INSERT INTO [datatypes] ([id], [text]) VALUES ( 271, 'test text' )
125
- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 281, '15:45:00.709714966' ) -- 15:45:00.71
126
- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 282, '04:20:00.288321545' ) -- 04:20:00.29
127
- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 283, '15:45:00.709714966' ) -- 15:45:00.709714900
128
- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 284, '04:20:00.288321545' ) -- 04:20:00.288321500
129
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 301, 0 )
130
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 302, 255 )
131
- INSERT INTO [datatypes] ([id], [uniqueidentifier]) VALUES ( 311, NEWID() )
132
- INSERT INTO [datatypes] ([id], [varbinary_50]) VALUES ( 321, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
133
- INSERT INTO [datatypes] ([id], [varbinary_max]) VALUES ( 331, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
134
- INSERT INTO [datatypes] ([id], [varchar_50]) VALUES ( 341, 'test varchar_50' )
135
- INSERT INTO [datatypes] ([id], [varchar_max]) VALUES ( 351, 'test varchar_max' )
136
- INSERT INTO [datatypes] ([id], [xml]) VALUES ( 361, '<foo><bar>batz</bar></foo>' )
137
-
138
- SET IDENTITY_INSERT [datatypes] OFF
139
-
140
-
@@ -1,138 +0,0 @@
1
-
2
- /*
3
-
4
- * Binary Data - Our test binary data is a 1 pixel gif. The basic (raw) data is below. Quoting this data
5
- would involve this (encode) method and be (encoded) with the 0x prefix for raw SQL. In other clients the
6
- (raw_db) value without the 0x prefix would need to be (packed) again yield the original (raw) value.
7
-
8
- (raw) - "GIF89a\001\000\001\000\221\000\000\377\377\377\377\377\377\376\001\002\000\000\000!\371\004\004\024\000\377\000,\000\000\000\000\001\000\001\000\000\002\002D\001\000;"
9
- (encode) - "0x#{raw.unpack("H*")[0]}"
10
- (encoded) - "0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
11
- (raw_db) - "47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b"
12
- (packed) - [raw_db].pack('H*')
13
-
14
- */
15
-
16
- CREATE TABLE [datatypes] (
17
- [id] [int] IDENTITY NOT NULL PRIMARY KEY,
18
- [bigint] [bigint] NULL,
19
- [binary_50] [binary](50) NULL,
20
- [bit] [bit] DEFAULT 0,
21
- [char_10] [char](10) NULL,
22
- [date] [date] NULL,
23
- [datetime] [datetime] NULL,
24
- -- [datetime2_7] [datetime2](7) NULL,
25
- -- [datetimeoffset_2] [datetimeoffset](2) NULL,
26
- -- [datetimeoffset_7] [datetimeoffset](7) NULL,
27
- [decimal_9_2] [decimal](9, 2) NULL,
28
- [decimal_16_4] [decimal](16, 4) NULL,
29
- [float] [float] NULL,
30
- -- [geography] [geography] NULL,
31
- -- [geometry] [geometry] NULL,
32
- -- [hierarchyid] [hierarchyid] NULL,
33
- [image] [image] NULL,
34
- [int] [int] NULL,
35
- [money] [money] NULL,
36
- [nchar_10] [nchar](10) NULL,
37
- -- [ntext] [ntext] NULL,
38
- [numeric_18_0] [numeric](18, 0) NULL,
39
- [numeric_36_2] [numeric](36, 2) NULL,
40
- [nvarchar_50] [nvarchar](50) NULL,
41
- -- [nvarchar_max] [nvarchar](max) NULL,
42
- [real] [real] NULL,
43
- [smalldatetime] [smalldatetime] NULL,
44
- [smallint] [smallint] NULL,
45
- [smallmoney] [smallmoney] NULL,
46
- [text] [text] NULL,
47
- -- [time_2] [time](2) NULL,
48
- -- [time_7] [time](7) NULL,
49
- [timestamp] [timestamp] NULL,
50
- [tinyint] [tinyint] NULL,
51
- -- [uniqueidentifier] [uniqueidentifier] NULL,
52
- [varbinary_50] [varbinary](50) NULL,
53
- -- [varbinary_max] [varbinary](max) NULL,
54
- [varchar_50] [varchar](50) NULL
55
- -- [varchar_max] [varchar](max) NULL,
56
- -- [xml] [xml] NULL
57
- )
58
-
59
- SET IDENTITY_INSERT [datatypes] ON
60
-
61
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 11, -9223372036854775807 )
62
- INSERT INTO [datatypes] ([id], [bigint]) VALUES ( 12, 9223372036854775806 )
63
- INSERT INTO [datatypes] ([id], [binary_50]) VALUES ( 21, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
64
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 31, 1 )
65
- INSERT INTO [datatypes] ([id], [bit]) VALUES ( 32, 0 )
66
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 41, '1234567890' )
67
- INSERT INTO [datatypes] ([id], [char_10]) VALUES ( 42, '12345678' )
68
- INSERT INTO [datatypes] ([id], [date]) VALUES ( 51, '0001-01-01' )
69
- INSERT INTO [datatypes] ([id], [date]) VALUES ( 52, '9999-12-31' )
70
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 61, '1753-01-01T00:00:00.000' )
71
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 62, '9999-12-31T23:59:59.997' )
72
- INSERT INTO [datatypes] ([id], [datetime]) VALUES ( 63, '2010-01-01T12:34:56.123' )
73
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 71, '0001-01-01T00:00:00.0000000Z' )
74
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 72, '1984-01-24T04:20:00.1234567-08:00' )
75
- -- INSERT INTO [datatypes] ([id], [datetime2_7]) VALUES ( 73, '9999-12-31T23:59:59.9999999Z' )
76
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 81, '1984-01-24T04:20:00.1234567-08:00' ) -- 1984-01-24 04:20:00.00 -08:00
77
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 82, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.00 +00:00
78
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_2]) VALUES ( 83, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.99 +00:00
79
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 84, '1984-01-24T04:20:00.1234567-08:00' ) -- 1984-01-24 04:20:00.1234567 -08:00
80
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 85, '1984-01-24T04:20:00.0000000Z' ) -- 1984-01-24 04:20:00.0000000 +00:00
81
- -- INSERT INTO [datatypes] ([id], [datetimeoffset_7]) VALUES ( 86, '9999-12-31T23:59:59.9999999Z' ) -- 9999-12-31 23:59:59.9999999 +00:00
82
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 91, 12345.01 )
83
- INSERT INTO [datatypes] ([id], [decimal_9_2]) VALUES ( 92, 1234567.89 )
84
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 93, 0.0 )
85
- INSERT INTO [datatypes] ([id], [decimal_16_4]) VALUES ( 94, 123456789012.3456 )
86
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 101, 123.00000001 )
87
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 102, 0.0 )
88
- INSERT INTO [datatypes] ([id], [float]) VALUES ( 103, 123.45 )
89
- -- INSERT INTO [datatypes] ([id], [geography]) VALUES ( 111, geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326) ) -- 0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0
90
- -- INSERT INTO [datatypes] ([id], [geometry]) VALUES ( 121, geometry::STGeomFromText('LINESTRING (100 100, 20 180, 180 180)', 0) ) -- 0x0000000001040300000000000000000059400000000000005940000000000000344000000000008066400000000000806640000000000080664001000000010000000001000000FFFFFFFF0000000002
91
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 131, CAST('/1/' AS hierarchyid) ) -- 0x58
92
- -- INSERT INTO [datatypes] ([id], [hierarchyid]) VALUES ( 132, CAST('/2/' AS hierarchyid) ) -- 0x68
93
- INSERT INTO [datatypes] ([id], [image]) VALUES ( 141, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
94
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 151, -2147483647 )
95
- INSERT INTO [datatypes] ([id], [int]) VALUES ( 152, 2147483646 )
96
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 161, 4.20 )
97
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 162, -922337203685477.5807 )
98
- INSERT INTO [datatypes] ([id], [money]) VALUES ( 163, 922337203685477.5806 )
99
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 171, N'1234567890' )
100
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 172, N'123456åå' )
101
- INSERT INTO [datatypes] ([id], [nchar_10]) VALUES ( 173, N'abc123' )
102
- -- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 181, N'test ntext' )
103
- -- INSERT INTO [datatypes] ([id], [ntext]) VALUES ( 182, N'test ntext' ) -- Removed UTF-8 chars. They make sybase choke in comments.
104
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 191, 191 )
105
- INSERT INTO [datatypes] ([id], [numeric_18_0]) VALUES ( 192, 123456789012345678 )
106
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 193, 12345678901234567890.01 )
107
- INSERT INTO [datatypes] ([id], [numeric_36_2]) VALUES ( 194, 123.46 )
108
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 201, N'test nvarchar_50' )
109
- INSERT INTO [datatypes] ([id], [nvarchar_50]) VALUES ( 202, N'test nvarchar_50 åå' )
110
- -- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 211, N'test nvarchar_max' )
111
- -- INSERT INTO [datatypes] ([id], [nvarchar_max]) VALUES ( 212, N'test nvarchar_max' ) -- Removed UTF-8 chars. They make sybase choke in comments.
112
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 221, 123.45 )
113
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 222, 0.0 )
114
- INSERT INTO [datatypes] ([id], [real]) VALUES ( 223, 0.00001 )
115
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 231, '1901-01-01T15:45:00.000' ) -- 1901-01-01 15:45:00
116
- INSERT INTO [datatypes] ([id], [smalldatetime]) VALUES ( 232, '2078-06-05T04:20:00.000' ) -- 2078-06-05 04:20:00
117
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 241, -32767 )
118
- INSERT INTO [datatypes] ([id], [smallint]) VALUES ( 242, 32766 )
119
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 251, 4.20 )
120
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 252, -214748.3647 )
121
- INSERT INTO [datatypes] ([id], [smallmoney]) VALUES ( 253, 214748.3646 )
122
- INSERT INTO [datatypes] ([id], [text]) VALUES ( 271, 'test text' )
123
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 281, '1901-01-01T15:45:00.0100001Z' ) -- 15:45:00.01
124
- -- INSERT INTO [datatypes] ([id], [time_2]) VALUES ( 282, '1984-01-24T04:20:00.0000001-08:00' ) -- 04:20:00.00
125
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 283, '1901-01-01T15:45:00.0100001Z' ) -- 15:45:00.0100001
126
- -- INSERT INTO [datatypes] ([id], [time_7]) VALUES ( 284, '1984-01-24T04:20:00.0000001-08:00' ) -- 04:20:00.0000001
127
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 301, 0 )
128
- INSERT INTO [datatypes] ([id], [tinyint]) VALUES ( 302, 255 )
129
- -- INSERT INTO [datatypes] ([id], [uniqueidentifier]) VALUES ( 311, NEWID() )
130
- INSERT INTO [datatypes] ([id], [varbinary_50]) VALUES ( 321, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
131
- -- INSERT INTO [datatypes] ([id], [varbinary_max]) VALUES ( 331, 0x47494638396101000100910000fffffffffffffe010200000021f904041400ff002c00000000010001000002024401003b )
132
- INSERT INTO [datatypes] ([id], [varchar_50]) VALUES ( 341, 'test varchar_50' )
133
- -- INSERT INTO [datatypes] ([id], [varchar_max]) VALUES ( 351, 'test varchar_max' )
134
- -- INSERT INTO [datatypes] ([id], [xml]) VALUES ( 361, '<foo><bar>batz</bar></foo>' )
135
-
136
- SET IDENTITY_INSERT [datatypes] OFF
137
-
138
-
File without changes
File without changes