Bagaimana Metadata Digunakan?
Aplikasi memerlukan metadata untuk sebagian besar operasi tataan hasil. Misalnya, aplikasi menggunakan jenis data kolom untuk menentukan jenis variabel apa yang akan diikat ke kolom tersebut. Ini menggunakan panjang byte kolom karakter untuk menentukan berapa banyak ruang yang diperlukan untuk menampilkan data dari kolom tersebut. Bagaimana aplikasi menentukan metadata untuk kolom bergantung pada jenis aplikasi.
Aplikasi vertikal bekerja dengan tabel yang telah ditentukan sebelumnya dan melakukan operasi yang telah ditentukan sebelumnya pada tabel tersebut. Karena metadata tataan hasil untuk aplikasi tersebut ditentukan sebelum aplikasi bahkan ditulis dan dikontrol oleh pengembang aplikasi, itu dapat dikodekan secara permanen ke dalam aplikasi. Misalnya, jika kolom ID pesanan didefinisikan sebagai bilangan bulat 4-byte di sumber data, aplikasi selalu dapat mengikat bilangan bulat 4-byte ke kolom tersebut. Ketika metadata dikodekan secara permanen dalam aplikasi, perubahan pada tabel yang digunakan oleh aplikasi umumnya menyiratkan perubahan pada kode aplikasi. Ini jarang menjadi masalah, karena perubahan tersebut biasanya dilakukan sebagai bagian dari rilis baru aplikasi.
Seperti aplikasi vertikal, aplikasi kustom umumnya bekerja dengan tabel yang telah ditentukan sebelumnya dan melakukan operasi yang telah ditentukan pada tabel tersebut. Misalnya, aplikasi mungkin ditulis untuk mentransfer data di antara tiga sumber data yang berbeda; data yang akan ditransfer biasanya diketahui ketika aplikasi ditulis. Dengan demikian, aplikasi kustom juga cenderung memiliki metadata yang dikodekan secara permanen.
Aplikasi generik, terutama yang mendukung kueri ad hoc, hampir tidak pernah tahu metadata tataan hasil yang mereka buat. Oleh karena itu, mereka harus menemukan metadata pada waktu proses menggunakan fungsi SQLNumResultCols, SQLDescribeCol, dan SQLColAttribute, yang dijelaskan di bagian berikutnya, SQLDescribeCol dan SQLColAttribute.
Semua aplikasi, terlepas dari jenisnya, dapat melakukan hard-code metadata untuk kumpulan hasil yang dikembalikan oleh fungsi katalog. Kumpulan hasil ini didefinisikan di bagian referensi manual ini.