Tôi đang truy vấn dữ liệu từ các chế độ xem có thể thay đổi. Tôi cần phải biết nếu cột tồn tại trước khi tôi làm một crs.get******()
. Tôi đã tìm thấy rằng tôi có thể truy vấn siêu dữ liệu như thế này để xem một cột tồn tại trước khi tôi yêu cầu dữ liệu từ nó.Làm cách nào để kiểm tra xem liệu tên cột có tồn tại trong CachedRowSet không?
ResultSetMetaData meta = crs.getMetaData();
int numCol = meta.getColumnCount();
for (int i = 1; i < numCol+1; i++)
if(meta.getColumnName(i).equals("name"))
return true;
Có cách nào đơn giản hơn để kiểm tra xem cột có tồn tại không?
EDIT: Nó phải là cơ sở dữ liệu bất khả tri. Đó là lý do tại sao tôi tham khảo CachedRowSet
thay vì cơ sở dữ liệu.
Tôi mới vào cachedRowSet, tôi chỉ tìm ra điều này khi tôi đang viết câu hỏi của mình. Đặt câu hỏi một cách mạch lạc làm tôi nghĩ nó theo những cách khác nhau. Chỉ cần đảm bảo rằng tôi đang đi đúng hướng. – WolfmanDragon
Nếu bạn cần tìm nhiều cột, bạn luôn có thể có trả về «Set» được điền bởi lệnh gọi phương thức 'getColumnName (i)'. Bằng cách này, bạn có thể tham khảo 'set.contains (myCol)' thay vì lặp qua tất cả mọi thứ. –
corsiKa