http://www.developria.com/2010/05/comparing-files-in-eclipse.html
說明如合何在 Eclipse 中比對兩個檔案內容
2013年5月17日 星期五
2012年11月26日 星期一
Microsoft SQL Server Driver for JDBC 發生 ResultSet can not re-read row data for column X 解决方法
問題發生的經過是,某天資料表須新增欄位,因為不確定長度要開多少,所以就先開
varchar(50),後來不夠又改成varchar(max),接著惡夢開使,所有服務一個接一個掛,讀資料庫接丟出以下例外訊息
Java.sql.SQLException: [Microsoft] [SQL Server 2000 JDBC Driver] ResultSet can not re-read row data for column X ( X = 1 ~ N )
微軟官方所提供的說明網頁:http://support.microsoft.com/kb/824106
依序向右,例如我有id, name, passwd, comments等4個欄位,取資料的順序就只能:
rs.getString("name");
rs.getString("passwd");
rs.getString("comments");
而不能是:
rs.getString("name");
rs.getString("id");
rs.getString("passwd");
rs.getString("comments");
第二種是,此外同一筆資料的每個欄位,也只能被讀取一次,例如:
rs.getString("name");
rs.getString("passwd");
rs.getString("comments");
而不能是:
rs.getString("name");
rs.getString("id");
rs.getString("passwd");
rs.getString("comments");
第二種是,此外同一筆資料的每個欄位,也只能被讀取一次,例如:
rs.getString("name");
rs.getString("name");
上述情況讀取了2次,就會出現錯誤。
處理方式可以用宣告變數存放:
String strId = rs.getString("id");
String strName = rs.getString("name");
可是我發現古人的程式都有以上這兩個問題,公司服務又2, 30個,改不完阿....冏
rs.getString("name");
上述情況讀取了2次,就會出現錯誤。
處理方式可以用宣告變數存放:
String strId = rs.getString("id");
String strName = rs.getString("name");
可是我發現古人的程式都有以上這兩個問題,公司服務又2, 30個,改不完阿....冏
繼續Google
(1)如果采用jdbc-odbc驱动,那么就必须按照查询顺序来一次读取(不论有没有image或text类型)
(2)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,不存在image或text类型字段,那么可以按照无序获取
(3)如果采用微软提供的ms sql server jdbc driver,如果查询语句中,存在image或text类型字段,那么就必须按照顺序读取,否则就会报告Driver]ResultSet can not re-read row data for column之类的错误
(4)如果想不查询语句中有没有image或text类型字段,都可以不按照顺序获取,或重复获取。
當我努力回想我到底改了什麼之後,才發現"如果查询语句中,存在image或text类型字段"
直覺覺的是我把varchar(50)改成varchar(max)關係,果然改回來就正常了.....冏到爆
網路上有人直接是建議改用JTDS
參考來源
http://www.wretch.cc/blog/weiyushen/9979951
http://www.ourys.com/post/ResultSet_can_not_re-read_row_data_for_column.html
http://www.wretch.cc/blog/weiyushen/9979951
http://www.ourys.com/post/ResultSet_can_not_re-read_row_data_for_column.html
http://android.blog.51cto.com/268543/49995
2012年9月12日 星期三
解決Viewport argument value "device-width;" for key "width" notrecognized. Content ignored.問題
在meta中設定viewport,使各裝置可以依照螢幕寬度自動調整
用chrome看會出現 Viewport argument value "device-width;" for key "width" not recognized. Content ignored. 研究了一下,解決辦法很簡單 只要將;(分號)改為,(逗號)即可
chrome就正常不會有error了
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0" /> 用chrome看會出現 Viewport argument value "device-width;" for key "width" not recognized. Content ignored. 研究了一下,解決辦法很簡單 只要將;(分號)改為,(逗號)即可
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0" /> chrome就正常不會有error了
2012年7月20日 星期五
2011年11月16日 星期三
[Java] 當IE遇到不明副檔名會直接開啟該檔案的解決方法
遇到狀況:當IE遇到不明副檔名會直接開啟該檔案,改成用OutputStream的方式
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition", "attachment; filename="xxx.txt");
InputStream is = new FileInputStream("要下載檔案的Path");
OutputStream os = response.getOutputStream();
int n = 0;
byte[] ba = new byte[1024];
while((n = is.read(ba)) != -1){
os.write(ba, 0, n);
}
is.close();
out.flush();
out.close();
response.setStatus(response.SC_OK);
response.flushBuffer();
2011年7月25日 星期一
2011年4月27日 星期三
SVN错误
SVN错误
现场描述:在Eclipse客户端第一次连到SVN时,如:svn://192.168.1.5/data/svn,然后要求输入用户名和密码。如果用户名和密码输入出错了,强行确定后。问题来了!会出现,以下错误信息:org.tigris.subversion.javahl.ClientException
Authorization failed
Authorization failed
然后,就算把原有的位置废弃掉,第二次再连接时,也是老样的错误。这个原因是第二次连接还是用第一次的用户名和密码,所以还是出现上面的错误。
解决方法:把C:\Documents and Settings\chris\Application Data\Subversion这个文件夹删掉,然后重新链接,再输入正确的用户名和密码。即可OK了!
訂閱:
意見 (Atom)