我有一个 JAVA 代码可以将 SQL Server 表输出到 CSV。打印在中间停止,我只得到部分数据作为 CSV 输出。在我的代码下面。public class SQLServerConnection { public static void main(String[] args) throws IOException, SQLException { // TODO Auto-generated method stub Connection conn = null; SQLConnection cnn = new SQLConnection(); FileWriter fw = new FileWriter(cnn.fileName); try {conn = DriverManager.getConnection(cnn.dbURL); if (conn != null) { DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData(); } } catch (SQLException ex) { ex.printStackTrace(); } String sql = String.format(cnn.Query); assert conn != null; PreparedStatement preStatement; preStatement = conn.prepareStatement(sql); ResultSet result = preStatement.executeQuery(); ResultSetMetaData rmsd = result.getMetaData(); int Columncount = rmsd.getColumnCount(); //Get the column name and print the column name for (int iterator=1; iterator<= Columncount; iterator++) { fw.append(rmsd.getColumnName(iterator)+","); } fw.append('\n'); while(result.next()){ try { for (int jterator=1; jterator<=Columncount; jterator++){ fw.append(result.getString(jterator)); fw.append(','); } fw.append('\n'); } catch (SQLException e) { e.printStackTrace(); }} conn.close(); }}DB 和 Excel 参数的类public class SQLConnection { public String ServerName = "Server1"; public String DBName = "DB1"; public String FileLoc = "Location of the file"; public String dbURL = "jdbc:sqlserver://"+ServerName+";databaseName="+DBName+";integratedSecurity=true"; public String Query = "SELECT * from [scdHSBCHK]"; public String fileName = (FileLoc + DBName +"_QueryResult.csv"); }实际的 db 返回 57 条记录,但 csv 仅返回 29 条。我尝试使用不同的 db 名称以及相同的问题。当我在程序窗口中输出结果时,数据显示正确。
添加回答
举报
0/150
提交
取消