日期:2014-05-20  浏览次数:20748 次

一个访问sqlserver2000得奇怪问题
我用sql   server2000   sp3,jre1.5.0.09,jdbc   sp3的驱动,eclipse3.2.1。程序中数据库联结、驱动均成功。

我想从库表中查寻数据显示到Jtable中,其中用查询语句String   sql= "select   *   from   table "就成功,但是一加上where子句。例如:String   sql= "select   *   from   table   where   name= '赵伟 ' "就不行(表中肯定有此纪录),‘赵伟’去掉单引号也不行(库表中name字段定义为varchar(10))。一运行就报错:Exception   in   thread   "AWT-EventQueue-0 "   java.lang.NullPointerException

这是怎么回事。高手分析救济一下。


------解决方案--------------------
既然select * 能查出來證明連接肯定沒有問題。+where后不能顯示證明無負荷條件的紀錄
name是varchar類型的會自動去除記錄兩端的空格(英文空格),我試驗了下,中文空格是不會被去除的,肯定是 '赵伟 '的左側或者右側有若干個中文空格造成的
所以沒有滿足這個條件的紀錄select * from table where name= '赵伟 '
去數據庫刪除空格或者用這個語句實驗下SELECT * FROM table WHERE name LIKE '%赵伟% '


------解决方案--------------------
select * from table where [name]= '赵伟 '
你这样试一下
------解决方案--------------------
String sql= "select * from table "如果成功,
String sql= "select * from table where name like '赵伟% ' ";
这样应该可以!
如果还是不行就
看表中的域名是否是name