查询文本文件的问题

woshishui11121113 2006-03-15 11:29:57
SELECT * FROM D:\myworkLog\SMCenter\SLog\2006\03\SLog01.txt WHERE target_no = "111"

java.sql.SQLException: [Microsoft][ODBC Text Driver] 参数不足,期待是 1。

上面是我在java中查询一个文本文件内容的sql语句和报的错误

怎么样才能解决这个问题呢?
请高手指教!!!
...全文
76 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshishui11121113 2006-03-15
  • 打赏
  • 举报
回复
谢谢可可!

我是的sql语句不加where条件就好用,加上就不好用,我用的是纯文本的查询方法,就是在文本文件路径建立了表描述文件schema.ini,然后根据这个文件对文本的描述查询。

schema文件里的内容为:
[SLog01.txt]
ColNameHeader=False
Format=TabDelimited
MaxScanRows=25
CharacterSet=OEM
Col1=log_date Char Width 20
Col2=send_time Char Width 20
Col3=target_no Char Width 20
Col4=client_name Char Width 20
Col5=client_no Char Width 20
Col6=insurance_no Char Width 30
Col7=sequence Char Width 30
Col8=Service_id Char Width 20
Col9=msg_content Char Width 140

查询语句为:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").
newInstance();
String url =
"jdbc:odbc:Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=";

String username = "";
String password = "";
Connection conn = DriverManager.getConnection(url, username,
password);

Statement stmt = null;
ResultSet rs = null;


rs = stmt.executeQuery("SELECT target_no FROM D:\mywork\中国人寿二期2006222\M95519_II\Log\SMCenter\SLog\2006\03\Lottery315\SLog01.txt WHERE target_no = \"111\""
);
//


while (rs.next())
{
............
}

不加WHERE条件一切正常,只要加上就报上面的错误。
lsqkeke 2006-03-15
  • 打赏
  • 举报
回复
SELECT *
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="D:\myworkLog\SMCenter\SLog\2006\03\SLog01.txt";User ID=Admin;Password=;')
lsqkeke 2006-03-15
  • 打赏
  • 举报
回复
要用 opendatasource()函数
woshishui11121113 2006-03-15
  • 打赏
  • 举报
回复
to 可可:

我把你写的语句里的文本文件路径修改成我的路径后,在查询分析器里执行失败
错误信息为:
第 3 行: ')' 附近有语法错误。

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧