为什么SQL CE Toolbox无法解析我的csv文件?

时间:2013-03-11 02:31:09

标签: parsing csv sql-server-ce asp.net-webpages

SQLCEToolbox看起来很有前途。

我安装了它,打开了VS 2012,选择了Tools | SQL Server Compact Toolbox可以快速轻松地建立与我的sdf数据库的连接,这是我在WebMatrix中创建的(也可以快速轻松地)。

然后我在SQLCEToolbox的树视图中右键单击数据库,并选择从CSV文件导入。

注意:必须在文件的第一行显式指定列名(行/行0)并显式添加ID /主键/标识值(如果有这样的列)。

一旦我用csv文件修复了各种格式错误,它似乎导入得很好。但我得到了这个错误信息:

Error Code: 80004005
 Message   : The data was truncated while converting from one data type to another. [ Name of function(if known) =  ]
 Minor Err.: 25920
 Source    : SQL Server Compact ADO.NET Data Provider

我的数据格式为:

1,SomeCategory,SomeName,SomeURL,Longitude,Latitude

例如,这是一个示例行:

3,ArtGallery, Henry Miller Memorial Library,http://www.henrymiller.org/, -121.7537834,36.2207945

除了int ID列,它们都是nvarchar(50)列。所以我意识到我的一些网址超过50个字符;所以,在WebMatrix中,我将该列修改为nvarchar(128)。在再次尝试导入时,显然第一个问题已经解决,但现在我得到了:

Error Code: 80004005
 Message   : The column cannot be modified. [ Column name = ID ]
 Minor Err.: 25004
 Source    : SQL Server Compact ADO.NET Data Provider
 Err. Par. : ID

好的,我推理,因为ID列要自动更新,我不应该在我的csv文件中。所以我改成了这个:

Category,Name,URL,Longitude,Latitude
ArtGallery, Henry Miller Memorial Library,http://www.henrymiller.org/, -121.7537834,36.2207945

...但是当我尝试以这种方式导入记录时(从第0行删除“ID”并从每行/记录中删除相应的val),并尝试导入,我得到:

Error Code: 80004005
 Message   : The data was truncated while converting from one data type to another. [ Name of function(if known) =  ]
 Minor Err.: 25920
 Source    : SQL Server Compact ADO.NET Data Provider

我试图在http://sqlcetoolbox.codeplex.com/发布一个问题,但尝试这样做只是将我带到一个通用的codeplex区域(而不是SQL CE Toolbox特定的区域)。

那么现在可能出现什么问题(修改后的第0行和另一个示例行如下所示)?最长的URL只有98个字符。

我的数据或方法有什么问题?

0 个答案:

没有答案