有客戶通過潤幹報表連線mysql資料庫,資料集語法使用了別名(例如select id as testid from test),但是在報表中無法通過別名獲取值。
通過jdbc直連測試各版本jdbc驅動測試,程式如下,
trystring drivername="com.mysql.jdbc.driver";
string username="root";
string userpasswd="";
string dbname="test";
string tablename="user";
string url="jdbc:mysql://localhost:3306/"+dbname+"?user="+username+"&password="+userpasswd;
class.forname("com.mysql.jdbc.driver").newinstance();
connection conn=drivermanager.getconnection(url);
string sql="select id as testid from num";
statement stmt=conn.createstatement();
resultset rs=stmt.executequery(sql);
resultsetmetadata rsmd = rs.getmetadata();
string colname= rsmd.getcolumnname(1) ;
string colname1= rsmd.getcolumnlabel(1) ;
system.out.println("aaaaaaaaaaaaaaaaaaaaaaaaaaa="+colname);
system.out.println("aaaaaaaaaaaaaaaaaaaaaaaaaaa="+colname1);
while(rs.next())
<%=rs.getint("testid")%>
rs.close();
stmt.close();
conn.close();
catch(exception e)
e.printstacktrace();
發現使用jdbc5.1.x系列驅動getcolumnname獲取的不是別名。
使用潤幹報表連線mysql資料庫時如果用到別名,可以通過使用5.0.x系列及以下驅動解決不能獲取別名的問題。
附jdbc驅動與mysql版本對應關係:
connector/j 5.1 支援mysql 4.1、mysql 5.0、mysql 5.1、mysql 6.0 alpha這些版本。
connector/j 5.0 支援mysql 4.1、mysql 5.0 servers、distributed transaction (xa)。
connector/j 3.1 支援mysql 4.1、mysql 5.0 servers、mysql 5.0 except distributed transaction (xa) support。
connector/j 3.0 支援mysql 3.x or mysql 4.1。
解決無法獲取app動態空件的屬性
首先電腦上需安裝eclipse和sdk n name project name.就是在 eclipse 中建立的專案的名字。t target target id of the new project.required 這個 id是本機上 android targets的id 可以通過命令 andro...
解決無法刪除檔案 rm rf
使用lnmp或者wdcp建立的站點後刪除站點目錄無法刪除,甚至已經加了root許可權.解決辦法 執行 chattr i home wwwroot yoursite user.ini 路徑不同 你的檔名 yoursite 在進行刪除 chattr命令 有時候你發現用root許可權都不能修改某個檔案,大...
ubuntu 解決「無法獲得鎖
ubuntu系統的命令視窗下用apt get install安裝軟體的時會出現以下錯誤 無法獲得鎖 var lib dpkg lock open 11 資源暫時不可用 無法鎖定管理目錄 var lib dpkg 是否有其他程序正占用它?最可能的原因為 apt get程序並沒有結束而導致的!此時在命令...