データベースからデータをInsert文でエクスポートする方法
SQLServer 2008 の Management Studio を使用すると、INSERT文をエクスポートすることが出来ます。
手順
Management Studio の オブジェクト エクスプローラで、どれでもいいので、データベースを右クリック。
「タスク」-「スクリプトの生成」とクリック。
「スクリプト作成ウィザード」が起動するので、「次へ」をクリック
「データのスクリプトを生成」を True にする。ここがミソ。
2005には、このオプションはありませんでした。
出力例
用意したデータ
Cimage は、OPENROWSET を使用して登録しました。
結果
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[TypeTest]( [Cchar] [char](10) NULL, [Cdatetime] [datetime] NULL, [Cdecimal] [decimal](18, 0) NULL, [Cfloat] [float] NULL, [Cimage] [image] NULL, [Cint] [int] NULL, [Cmoney] [money] NULL, [Cnchar] [nchar](10) NULL, [Cntext] [ntext] NULL, [Cnumeric] [numeric](18, 0) NULL, [Cnvarchar] [nvarchar](50) NULL, [Ctext] [text] NULL, [Cvarchar] [varchar](50) NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO SET ANSI_PADDING OFF GO INSERT [dbo].[TypeTest] ([Cchar], [Cdatetime], [Cdecimal], [Cfloat], [Cimage], [Cint], [Cmoney], [Cnchar], [Cntext], [Cnumeric], [Cnvarchar], [Ctext], [Cvarchar]) VALUES (N'abcあいう ', CAST(0x00009E5F00328F5C AS DateTime), CAST(123456789012345678 AS Decimal(18, 0)), 123.456, 0x47494638396117000500F70000000000800000008000808000000080800080008080808080C0C0C0FF000000FF00FFFF000000FFFF00FF00FFFFFFFFFF0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000330000660000990000CC0000FF0033000033330033660033990033CC0033FF0066000066330066660066990066CC0066FF0099000099330099660099990099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF0000FF3300FF6600FF9900FFCC00FFFF3300003300333300663300993300CC3300FF3333003333333333663333993333CC3333FF3366003366333366663366993366CC3366FF3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC9933CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF6600006600336600666600996600CC6600FF6633006633336633666633996633CC6633FF6666006666336666666666996666CC6666FF6699006699336699666699996699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF3366FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF9933009933339933669933999933CC9933FF9966009966339966669966999966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC3399CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFFCC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFFCCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0000FF0033FF0066FF0099FF00CCFF00FFFF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33FFCC66FFCC99FFCCCCFFCCFFFFFF00FFFF33FFFF66FFFF99FFFFCCFFFFFF21F90401000010002C000000001700050000082900510814F86F204183280A1AFC57906143870F21468CB850E1408709316A94B87162468B072B3E0C08003B, 123456, 1234567890.0000, N'안녕하십니까 ', N'abccdefg あいうえお 안녕하십니까 你好', CAST(123456790 AS Numeric(18, 0)), N'abc あいう 안녕하십니까 你好', N'abcdefg', N'abc あいうえお')
登録したデータとの比較
datetime型は、内部の数値で出力されているのが分かります。