2013-02-17 132 views
0
  • 语言:VB.Net
  • 数据库:SQLite的
  • IDE:的Visual Studio 2012

我解析一个文件夹,放置文件名 - 带有完整路径进入表格。在SQL SELECT查询中使用冒号(不绑定)

我从Visual Studio调试器收到以下错误:在第14位:

不能解释令牌'。

的代码行是:

rowsFound = Me.Select("FileName = """ + fi.FullName + """") 

计算结果为:

rowsFound = Me.Select("FileName = "G:\Dropbox\VirtualDJ\Tracklisting\2008-02-02 11th Birthday.m3u"") 

位置14是在路径的驱动器号定界符的位置。

虽然不是主键,我使用的完整路径/文件名作为唯一标识符和重新扫描文件时,检查,看看是否在文件中添加一个新的DataRow之前就存在。

我已经没有问题,Access 2010中的原型这一点,但移动到VB.net,因为我不能让一个ID3库VBA的工作需要。但是,不能通过基本查找的东西是一个showstopper。

任何帮助,将不胜感激。

干杯,

罗伊

回答

2

尝试围绕单引号的路径:

Me.Select("FileName = '" + fi.FullName + "'") 

你所提到的apostrophe是部分文件名,您的评论,你需要逃避它:

Me.Select("FileName = '" + fi.FullName.Replace("'","''") + "'") 
+0

总是显而易见的 - 我以为我已经试过了。我的错在周日编码! – Corneloues 2013-02-17 16:46:18

+0

撇号是Windows上文件名中的有效字符。 – 2013-02-17 17:35:38

+0

@AndrewMorton查看更新后的答案。 – AbZy 2013-02-17 17:41:47