Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengakses Lajur JDBC ResultSet dengan Alias ​​Jadual?

Bagaimana untuk Mengakses Lajur JDBC ResultSet dengan Alias ​​Jadual?

Patricia Arquette
Lepaskan: 2024-12-30 16:06:13
asal
139 orang telah melayarinya

How to Access JDBC ResultSet Columns with Table Aliases?

Lajur JDBC ResultSet dengan Alias ​​Jadual

Apabila melaksanakan pertanyaan seperti "PILIH * daripada jadual1 a, jadual2 b di mana (APA)", mengakses data dengan "resultSet.getString("a.columnName")" atau "resultSet.getString("b.columnName")" gagal.

API JDBC tidak menangani senario ini secara eksplisit, menjadikannya bergantung kepada vendor. Walau bagaimanapun, anda boleh menyelesaikan isu ini dengan:

Pilihan 1: Penamaan Semula Lajur

Namakan lajur secara berbeza dalam pertanyaan menggunakan alias, seperti:

SELECT
    a.columnName as columnNameA,
    b.columnName as columnNameB,
    ...
from table1 a, table2 b where (WHATEVER)
Salin selepas log masuk

Kemudian rujuk alias ini dalam Java anda kod:

resultSet.getString("columnNameA");
resultSet.getString("columnNameB");
Salin selepas log masuk

Pilihan 2: Kedudukan Lajur

Rujuk lajur mengikut kedudukan dalam set hasil:

resultSet.getString(1);
resultSet.getString(2);
Salin selepas log masuk

Perhatikan bahawa JDBC menggunakan pengindeksan berasaskan satu, bermula dari 1 untuk lajur pertama.

Untuk keselamatan dan kebolehselenggaraan, Pilihan 1 (Penamaan Semula Lajur) disyorkan. Jika susunan lajur pertanyaan berubah, kod anda akan pecah secara senyap apabila mengakses lajur yang salah. Sebaliknya, menukar nama lajur akan menimbulkan pengecualian "tiada lajur sedemikian", memaklumkan anda tentang isu itu.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Lajur JDBC ResultSet dengan Alias ​​Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan