Kelas CDaoTableDef
Mewakili definisi tersimpan dari tabel dasar atau tabel terlampir.
Catatan
DAO didukung melalui Office 2013. DAO 3.6 adalah versi akhir, dan dianggap usang.
Sintaks
class CDaoTableDef : public CObject
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CDaoTableDef::CDaoTableDef | Membuat CDaoTableDef objek. |
Metode Publik
Nama | Deskripsi |
---|---|
CDaoTableDef::Tambahkan | Menambahkan tabel baru ke database. |
CDaoTableDef::CanUpdate | Mengembalikan bukan nol jika tabel dapat diperbarui (Anda dapat mengubah definisi bidang atau properti tabel). |
CDaoTableDef::Close | Menutup tabledef yang terbuka. |
CDaoTableDef::Create | Membuat tabel yang dapat ditambahkan ke database menggunakan Tambahkan. |
CDaoTableDef::CreateField | Dipanggil untuk membuat bidang untuk tabel. |
CDaoTableDef::CreateIndex | Dipanggil untuk membuat indeks untuk tabel. |
CDaoTableDef::D eleteField | Dipanggil untuk menghapus bidang dari tabel. |
CDaoTableDef::D eleteIndex | Dipanggil untuk menghapus indeks dari tabel. |
CDaoTableDef::GetAttributes | Mengembalikan nilai yang menunjukkan satu atau beberapa CDaoTableDef karakteristik objek. |
CDaoTableDef::GetConnect | Mengembalikan nilai yang menyediakan informasi tentang sumber tabel. |
CDaoTableDef::GetDateCreated | Mengembalikan tanggal dan waktu tabel dasar yang CDaoTableDef mendasar objek dibuat. |
CDaoTableDef::GetDateLastUpdated | Mengembalikan tanggal dan waktu perubahan terbaru yang dilakukan pada desain tabel dasar. |
CDaoTableDef::GetFieldCount | Mengembalikan nilai yang menunjukkan jumlah bidang dalam tabel. |
CDaoTableDef::GetFieldInfo | Mengembalikan jenis informasi tertentu tentang bidang dalam tabel. |
CDaoTableDef::GetIndexCount | Mengembalikan jumlah indeks untuk tabel. |
CDaoTableDef::GetIndexInfo | Mengembalikan jenis informasi tertentu tentang indeks untuk tabel. |
CDaoTableDef::GetName | Mengembalikan nama tabel yang ditentukan pengguna. |
CDaoTableDef::GetRecordCount | Mengembalikan jumlah rekaman dalam tabel. |
CDaoTableDef::GetSourceTableName | Mengembalikan nilai yang menentukan nama tabel terlampir dalam database sumber. |
CDaoTableDef::GetValidationRule | Mengembalikan nilai yang memvalidasi data dalam bidang saat diubah atau ditambahkan ke tabel. |
CDaoTableDef::GetValidationText | Mengembalikan nilai yang menentukan teks pesan yang ditampilkan aplikasi Anda jika nilai objek Bidang tidak memenuhi aturan validasi yang ditentukan. |
CDaoTableDef::IsOpen | Mengembalikan nonzero jika tabel terbuka. |
CDaoTableDef::Open | Membuka tabledef yang sudah ada yang disimpan dalam koleksi TableDef database. |
CDaoTableDef::RefreshLink | Memperbarui informasi koneksi untuk tabel terlampir. |
CDaoTableDef::SetAttributes | Mengatur nilai yang menunjukkan satu atau beberapa CDaoTableDef karakteristik objek. |
CDaoTableDef::SetConnect | Mengatur nilai yang menyediakan informasi tentang sumber tabel. |
CDaoTableDef::SetName | Mengatur nama tabel. |
CDaoTableDef::SetSourceTableName | Mengatur nilai yang menentukan nama tabel terlampir dalam database sumber. |
CDaoTableDef::SetValidationRule | Mengatur nilai yang memvalidasi data dalam bidang saat diubah atau ditambahkan ke tabel. |
CDaoTableDef::SetValidationText | Mengatur nilai yang menentukan teks pesan yang ditampilkan aplikasi Anda jika nilai objek Bidang tidak memenuhi aturan validasi yang ditentukan. |
Anggota Data Publik
Nama | Deskripsi |
---|---|
CDaoTableDef::m_pDAOTableDef | Penunjuk ke antarmuka DAO yang mendasar objek tabledef. |
CDaoTableDef::m_pDatabase | Database sumber untuk tabel ini. |
Keterangan
Setiap objek database DAO mempertahankan koleksi, yang disebut TableDefs, yang berisi semua objek tabledef DAO yang disimpan.
Anda memanipulasi definisi tabel menggunakan CDaoTableDef
objek. Misalnya, Anda dapat:
Periksa bidang dan struktur indeks dari tabel lokal, terlampir, atau eksternal dalam database.
SetConnect
Panggil fungsi anggota danSetSourceTableName
untuk tabel terlampir, dan gunakanRefreshLink
fungsi anggota untuk memperbarui koneksi ke tabel terlampir.CanUpdate
Panggil fungsi anggota untuk menentukan apakah Anda dapat mengedit definisi bidang dalam tabel.Dapatkan atau atur kondisi validasi menggunakan
GetValidationRule
fungsi danSetValidationRule
, danGetValidationText
anggota danSetValidationText
.Open
Gunakan fungsi anggota untuk membuat objek jenisCDaoRecordset
tabel, dynaset-, atau snapshot.Catatan
Kelas database DAO berbeda dari kelas database MFC berdasarkan Open Database Connectivity (ODBC). Semua nama kelas database DAO memiliki awalan "CDao". Anda masih dapat mengakses sumber data ODBC dengan kelas DAO; kelas DAO umumnya menawarkan kemampuan unggul karena khusus untuk mesin database Microsoft Jet.
Untuk menggunakan objek tabledef baik untuk bekerja dengan tabel yang sudah ada atau untuk membuat tabel baru
Dalam semua kasus, pertama-tama buat
CDaoTableDef
objek, berikan pointer ke objek CDaoDatabase tempat tabel berada.Kemudian lakukan hal berikut, tergantung pada apa yang Anda inginkan:
Untuk menggunakan tabel tersimpan yang sudah ada, panggil fungsi Anggota terbuka objek tabledef, yang menyediakan nama tabel yang disimpan.
Untuk membuat tabel baru, panggil fungsi Buat anggota objek tabledef, yang menyediakan nama tabel. Panggil CreateField dan CreateIndex untuk menambahkan bidang dan indeks ke tabel.
Panggil Tambahkan untuk menyimpan tabel dengan menambahkannya ke koleksi TableDefs database.
Create
menempatkan tabledef ke dalam status terbuka, jadi setelah memanggilCreate
Anda tidak memanggilOpen
.Tip
Cara term mudah untuk membuat tabel tersimpan adalah dengan membuatnya dan menyimpannya di database Anda menggunakan Microsoft Access. Kemudian Anda dapat membuka dan menggunakannya dalam kode MFC Anda.
Untuk menggunakan objek tabledef yang telah Anda buka atau buat, buat dan buka CDaoRecordset
objek, tentukan nama tabledef dengan dbOpenTable
nilai dalam parameter nOpenType .
Untuk menggunakan objek tabledef untuk membuat CDaoRecordset
objek, Anda biasanya membuat atau membuka tabledef seperti yang dijelaskan di atas, lalu membuat objek recordset, meneruskan penunjuk ke objek tabledef saat Anda memanggil CDaoRecordset::Open. Tabledef yang Anda lewati harus dalam keadaan terbuka. Untuk informasi selengkapnya, lihat kelas CDaoRecordset.
Ketika Anda selesai menggunakan objek tabledef, panggil fungsi Tutup anggotanya; lalu hancurkan objek tabledef.
Hierarki Warisan
CDaoTableDef
Persyaratan
Header: afxdao.h
CDaoTableDef::Tambahkan
Panggil fungsi anggota ini setelah Anda memanggil Buat untuk membuat objek tabledef baru untuk menyimpan tabledef dalam database.
virtual void Append();
Keterangan
Fungsi menambahkan objek ke koleksi TableDefs database. Anda dapat menggunakan tabledef sebagai objek sementara sambil menentukannya dengan tidak menambahkannya, tetapi jika Anda ingin menyimpan dan menggunakannya, Anda harus memanggil Append
.
Catatan
Jika Anda mencoba menambahkan tabledef yang tidak disebutkan namanya (berisi string null atau kosong), MFC akan memberikan pengecualian.
Untuk informasi terkait, lihat topik "Tambahkan Metode" di Bantuan DAO.
CDaoTableDef::CanUpdate
Panggil fungsi anggota ini untuk menentukan apakah definisi tabel yang mendasar CDaoTableDef
objek dapat diubah.
BOOL CanUpdate();
Tampilkan Nilai
Bukan nol jika struktur tabel (skema) dapat dimodifikasi (tambahkan atau hapus bidang dan indeks), jika tidak 0.
Keterangan
Secara default, tabel yang baru dibuat yang mendasar CDaoTableDef
objek dapat diperbarui, dan tabel terlampir yang CDaoTableDef
mendasar objek tidak dapat diperbarui. Objek CDaoTableDef
mungkin dapat diperbarui, bahkan jika kumpulan rekaman yang dihasilkan tidak dapat diperbarui.
Untuk informasi terkait, lihat topik "Properti yang Dapat Diperbarui" di Bantuan DAO.
CDaoTableDef::CDaoTableDef
Membuat CDaoTableDef
objek.
CDaoTableDef(CDaoDatabase* pDatabase);
Parameter
pDatabase
Penunjuk ke objek CDaoDatabase .
Keterangan
Setelah membuat objek, Anda harus memanggil fungsi Buat atau Buka anggota. Setelah selesai dengan objek, Anda harus memanggil fungsi Tutup anggotanya dan menghancurkan CDaoTableDef
objek.
CDaoTableDef::Close
Panggil fungsi anggota ini untuk menutup dan merilis objek tabledef.
virtual void Close();
Keterangan
Biasanya setelah memanggil Close
, Anda menghapus objek tabledef jika dialokasikan dengan new
.
Anda dapat memanggil Buka lagi setelah memanggil Close
. Ini memungkinkan Anda menggunakan kembali objek tabledef.
Untuk informasi terkait, lihat topik "Tutup Metode" di Bantuan DAO.
CDaoTableDef::Create
Panggil fungsi anggota ini untuk membuat tabel tersimpan baru.
virtual void Create(
LPCTSTR lpszName,
long lAttributes = 0,
LPCTSTR lpszSrcTable = NULL,
LPCTSTR lpszConnect = NULL);
Parameter
lpszName
Penunjuk ke string yang berisi nama tabel.
lAttributes
Nilai yang sesuai dengan karakteristik tabel yang diwakili oleh objek tabledef. Anda dapat menggunakan bitwise-OR untuk menggabungkan salah satu konstanta berikut:
Terus-menerus | Deskripsi |
---|---|
dbAttachExclusive |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan tabel adalah tabel terlampir yang dibuka untuk penggunaan eksklusif. |
dbAttachSavePWD |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan bahwa ID pengguna dan kata sandi untuk tabel terlampir disimpan dengan informasi koneksi. |
dbSystemObject |
Menunjukkan tabel adalah tabel sistem yang disediakan oleh mesin database Microsoft Jet. |
dbHiddenObject |
Menunjukkan tabel adalah tabel tersembunyi yang disediakan oleh mesin database Microsoft Jet. |
lpszSrcTable
Penunjuk ke string yang berisi nama tabel sumber. Secara default nilai ini diinisialisasi sebagai NULL.
lpszConnect
Penunjuk ke string yang berisi string koneksi default. Secara default nilai ini diinisialisasi sebagai NULL.
Keterangan
Setelah Anda menamai tabledef, Anda kemudian dapat memanggil Tambahkan untuk menyimpan tabledef dalam koleksi TableDefs database. Setelah memanggil Append
, tabledef dalam status terbuka, dan Anda dapat menggunakannya untuk membuat objek CDaoRecordset .
Untuk informasi terkait, lihat topik "Metode CreateTableDef" di Bantuan DAO.
CDaoTableDef::CreateField
Panggil fungsi anggota ini untuk menambahkan bidang ke tabel.
void CreateField(
LPCTSTR lpszName,
short nType,
long lSize,
long lAttributes = 0);
void CreateField(CDaoFieldInfo& fieldinfo);
Parameter
lpszName
Penunjuk ke ekspresi string yang menentukan nama bidang ini.
nType
Nilai yang menunjukkan jenis data bidang . Pengaturan dapat berupa salah satu nilai ini:
Jenis | Ukuran (byte) | Deskripsi |
---|---|---|
dbBoolean |
1 byte | BOOL |
dbByte |
BYTE | |
dbInteger |
2 | int |
dbLong |
4 | long |
dbCurrency |
8 | Mata Uang ( COleCurrency) |
dbSingle |
4 | float |
dbDouble |
8 | ganda |
dbDate |
8 | Tanggal/Waktu ( COleDateTime) |
dbText |
1 - 255 | Teks ( CString) |
dbLongBinary |
0 | Biner Panjang (Objek OLE), CLongBinary atau CByteArray |
dbMemo |
0 | Memo ( CString) |
lSize
Nilai yang menunjukkan ukuran maksimum, dalam byte, bidang yang berisi teks, atau ukuran tetap bidang yang berisi teks atau nilai numerik. Parameter lSize diabaikan untuk semua kecuali bidang teks.
lAttributes
Nilai yang sesuai dengan karakteristik bidang dan yang dapat digabungkan menggunakan bitwise-OR.
Terus-menerus | Deskripsi |
---|---|
dbFixedField |
Ukuran bidang diperbaiki (default untuk bidang Numerik). |
dbVariableField |
Ukuran bidang adalah variabel (Bidang teks saja). |
dbAutoIncrField |
Nilai bidang untuk rekaman baru secara otomatis ditambahkan ke bilangan bulat panjang unik yang tidak dapat diubah. Hanya didukung untuk tabel database Microsoft Jet. |
dbUpdatableField |
Nilai bidang dapat diubah. |
dbDescending |
Bidang diurutkan dalam urutan menurun (Z - A atau 100 - 0) (hanya berlaku untuk objek Bidang dalam kumpulan Bidang objek Indeks). Jika Anda menghilangkan konstanta ini, bidang diurutkan dalam urutan naik (A - Z atau 0 - 100) (default). |
fieldinfo
Referensi ke struktur CDaoFieldInfo .
Keterangan
Objek DAOField
(OLE) dibuat dan ditambahkan ke kumpulan Bidang objek DAOTableDef
(OLE). Selain penggunaannya untuk memeriksa properti objek, Anda juga dapat menggunakan CDaoFieldInfo
untuk membuat parameter input untuk membuat bidang baru dalam tabledef. Versi pertama lebih CreateField
mudah digunakan, tetapi jika Anda menginginkan kontrol yang lebih baik, Anda dapat menggunakan versi CreateField
kedua , yang mengambil CDaoFieldInfo
parameter.
Jika Anda menggunakan versi CreateField
yang mengambil CDaoFieldInfo
parameter, Anda harus mengatur masing-masing anggota CDaoFieldInfo
struktur berikut dengan hati-hati:
m_strName
m_nType
m_lSize
m_lAttributes
m_bAllowZeroLength
Anggota yang tersisa CDaoFieldInfo
harus diatur ke 0, FALSE, atau string kosong, yang sesuai untuk anggota, atau CDaoException
mungkin terjadi.
Untuk informasi terkait, lihat topik "CreateField Method" di Bantuan DAO.
CDaoTableDef::CreateIndex
Panggil fungsi ini untuk menambahkan indeks ke tabel.
void CreateIndex(CDaoIndexInfo& indexinfo);
Parameter
indexinfo
Referensi ke struktur CDaoIndexInfo .
Keterangan
Indeks menentukan urutan rekaman yang diakses dari tabel database dan apakah rekaman duplikat diterima atau tidak. Indeks juga menyediakan akses yang efisien ke data.
Anda tidak perlu membuat indeks untuk tabel, tetapi dalam tabel besar yang tidak diindeks, mengakses rekaman tertentu atau membuat kumpulan rekaman dapat memakan waktu lama. Di sisi lain, membuat terlalu banyak indeks memperlambat operasi pembaruan, penambahan, dan penghapusan karena semua indeks diperbarui secara otomatis. Pertimbangkan faktor-faktor ini saat Anda memutuskan indeks mana yang akan dibuat.
Anggota CDaoIndexInfo
struktur berikut harus diatur:
m_strName
Nama harus disediakan.m_pFieldInfos
Harus menunjuk ke arrayCDaoIndexFieldInfo
struktur.m_nFields
Harus menentukan jumlah bidang dalam arrayCDaoFieldInfo
struktur.
Anggota yang tersisa akan diabaikan jika diatur ke FALSE. Selain itu, m_lDistinctCount
anggota diabaikan selama pembuatan indeks.
CDaoTableDef::D eleteField
Panggil fungsi anggota ini untuk menghapus bidang dan membuatnya tidak dapat diakses.
void DeleteField(LPCTSTR lpszName);
void DeleteField(int nIndex);
Parameter
lpszName
Penunjuk ke ekspresi string yang merupakan nama bidang yang sudah ada.
nIndex
Indeks bidang dalam kumpulan Bidang berbasis nol tabel, untuk pencarian menurut indeks.
Keterangan
Anda dapat menggunakan fungsi anggota ini pada objek baru yang belum ditambahkan ke database atau ketika CanUpdate mengembalikan nonzero.
Untuk informasi terkait, lihat topik "Hapus Metode" di Bantuan DAO.
CDaoTableDef::D eleteIndex
Panggil fungsi anggota ini untuk menghapus indeks dalam tabel yang mendasar.
void DeleteIndex(LPCTSTR lpszName);
void DeleteIndex(int nIndex);
Parameter
lpszName
Penunjuk ke ekspresi string yang merupakan nama indeks yang sudah ada.
nIndex
Indeks array objek indeks dalam koleksi TableDefs berbasis nol database, untuk pencarian menurut indeks.
Keterangan
Anda dapat menggunakan fungsi anggota ini pada objek baru yang belum ditambahkan ke database atau ketika CanUpdate mengembalikan nonzero.
Untuk informasi terkait, lihat topik "Hapus Metode" di Bantuan DAO.
CDaoTableDef::GetAttributes
CDaoTableDef
Untuk objek, nilai pengembalian menentukan karakteristik tabel yang diwakili oleh CDaoTableDef
objek dan dapat berupa jumlah konstanta ini:
long GetAttributes();
Tampilkan Nilai
Mengembalikan nilai yang menunjukkan satu atau beberapa CDaoTableDef
karakteristik objek.
Keterangan
Terus-menerus | Deskripsi |
---|---|
dbAttachExclusive |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan tabel adalah tabel terlampir yang dibuka untuk penggunaan eksklusif. |
dbAttachSavePWD |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan bahwa ID pengguna dan kata sandi untuk tabel terlampir disimpan dengan informasi koneksi. |
dbSystemObject |
Menunjukkan tabel adalah tabel sistem yang disediakan oleh mesin database Microsoft Jet. |
dbHiddenObject |
Menunjukkan tabel adalah tabel tersembunyi yang disediakan oleh mesin database Microsoft Jet. |
dbAttachedTable |
Menunjukkan tabel adalah tabel terlampir dari database non-ODBC, seperti database Paradox. |
dbAttachedODBC |
Menunjukkan tabel adalah tabel terlampir dari database ODBC, seperti Microsoft SQL Server. |
Tabel sistem adalah tabel yang dibuat oleh mesin database Microsoft Jet untuk berisi berbagai informasi internal.
Tabel tersembunyi adalah tabel yang dibuat untuk penggunaan sementara oleh mesin database Microsoft Jet.
Untuk informasi terkait, lihat topik "Properti Atribut" di Bantuan DAO.
CDaoTableDef::GetConnect
Panggil fungsi anggota ini untuk mendapatkan string koneksi untuk sumber data.
CString GetConnect();
Tampilkan Nilai
Objek CString
yang berisi jalur dan jenis database untuk tabel.
Keterangan
CDaoTableDef
Untuk objek yang mewakili tabel terlampir, CString
objek terdiri dari satu atau dua bagian (penentu jenis database dan jalur ke database).
Jalur seperti yang ditunjukkan pada tabel di bawah ini adalah jalur lengkap untuk direktori yang berisi file database dan harus didahului oleh pengidentifikasi "DATABASE=". Dalam beberapa kasus (seperti halnya database Microsoft Jet dan Microsoft Excel), nama file tertentu disertakan dalam argumen jalur database.
Tabel di CDaoTableDef::SetConnect memperlihatkan kemungkinan jenis database dan penentu dan jalur database yang sesuai:
Untuk tabel dasar database Microsoft Jet, penentu adalah string kosong ("").
Jika kata sandi diperlukan tetapi tidak disediakan, driver ODBC menampilkan kotak dialog masuk saat pertama kali tabel diakses dan sekali lagi jika koneksi ditutup dan dibuka kembali. Jika tabel terlampir memiliki dbAttachSavePWD
atribut , perintah masuk tidak akan muncul saat tabel dibuka kembali.
Untuk informasi terkait, lihat topik "Sambungkan Properti" di Bantuan DAO.
CDaoTableDef::GetDateCreated
Panggil fungsi ini untuk menentukan tanggal dan waktu tabel yang mendasar CDaoTableDef
objek dibuat.
COleDateTime GetDateCreated();
Tampilkan Nilai
Nilai yang berisi tanggal dan waktu pembuatan tabel yang mendasar CDaoTableDef
objek.
Keterangan
Pengaturan tanggal dan waktu berasal dari komputer tempat tabel dasar dibuat atau terakhir diperbarui. Di lingkungan multipengguna, pengguna harus mendapatkan pengaturan ini langsung dari server file untuk menghindari perbedaan; artinya, semua klien harus menggunakan sumber waktu "standar" - mungkin dari satu server.
Untuk informasi terkait, lihat topik "DateCreated, LastUpdated Properties" di Bantuan DAO.
CDaoTableDef::GetDateLastUpdated
Panggil fungsi ini untuk menentukan tanggal dan waktu tabel yang mendasar CDaoTableDef
objek terakhir diperbarui.
COleDateTime GetDateLastUpdated();
Tampilkan Nilai
Nilai yang berisi tanggal dan waktu tabel yang mendasar CDaoTableDef
objek terakhir diperbarui.
Keterangan
Pengaturan tanggal dan waktu berasal dari komputer tempat tabel dasar dibuat atau terakhir diperbarui. Di lingkungan multipengguna, pengguna harus mendapatkan pengaturan ini langsung dari server file untuk menghindari perbedaan; artinya, semua klien harus menggunakan sumber waktu "standar" - mungkin dari satu server.
Untuk informasi terkait, lihat topik "DateCreated, LastUpdated Properties" di Bantuan DAO.
CDaoTableDef::GetFieldCount
Panggil fungsi anggota ini untuk mengambil jumlah bidang yang ditentukan dalam tabel.
short GetFieldCount();
Tampilkan Nilai
Jumlah bidang dalam tabel.
Keterangan
Jika nilainya adalah 0, tidak ada objek dalam koleksi.
Untuk informasi terkait, lihat topik "Hitung Properti" di Bantuan DAO.
CDaoTableDef::GetFieldInfo
Panggil fungsi anggota ini untuk mendapatkan berbagai jenis informasi tentang bidang yang ditentukan dalam tabledef.
void GetFieldInfo(
int nIndex,
CDaoFieldInfo& fieldinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
void GetFieldInfo(
LPCTSTR lpszName,
CDaoFieldInfo& fieldinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
Parameter
nIndex
Indeks objek bidang dalam kumpulan Bidang berbasis nol tabel, untuk pencarian menurut indeks.
fieldinfo
Referensi ke struktur CDaoFieldInfo .
dwInfoOptions
Opsi yang menentukan informasi mana tentang bidang yang akan diambil. Opsi yang tersedia tercantum di sini bersama dengan apa yang menyebabkan fungsi kembali:
AFX_DAO_PRIMARY_INFO
(Default) Nama, Jenis, Ukuran, Atribut. Gunakan opsi ini untuk performa tercepat.AFX_DAO_SECONDARY_INFO
Informasi utama, plus: Posisi Ordinal, Diperlukan, Izinkan Panjang Nol, Susunan Susunan, Nama Asing, Bidang Sumber, Tabel SumberAFX_DAO_ALL_INFO
Informasi primer dan sekunder, plus: Aturan Validasi, Teks Validasi, Nilai Default
lpszName
Penunjuk ke nama objek bidang, untuk pencarian berdasarkan nama. Nama adalah string dengan hingga 64 karakter yang secara unik memberi nama bidang.
Keterangan
Satu versi fungsi memungkinkan Anda mencari bidang menurut indeks. Versi lainnya memungkinkan Anda mencari bidang berdasarkan nama.
Untuk deskripsi informasi yang dikembalikan, lihat struktur CDaoFieldInfo . Struktur ini memiliki anggota yang sesuai dengan item informasi yang tercantum di atas dalam deskripsi dwInfoOptions. Saat Anda meminta informasi di satu tingkat, Anda juga mendapatkan informasi untuk tingkat sebelumnya.
Untuk informasi terkait, lihat topik "Properti Atribut" di Bantuan DAO.
CDaoTableDef::GetIndexCount
Panggil fungsi anggota ini untuk mendapatkan jumlah indeks untuk tabel.
short GetIndexCount();
Tampilkan Nilai
Jumlah indeks untuk tabel.
Keterangan
Jika nilainya adalah 0, tidak ada indeks dalam koleksi.
Untuk informasi terkait, lihat topik "Hitung Properti" di Bantuan DAO.
CDaoTableDef::GetIndexInfo
Panggil fungsi anggota ini untuk mendapatkan berbagai jenis informasi tentang indeks yang ditentukan dalam tabledef.
void GetIndexInfo(
int nIndex,
CDaoIndexInfo& indexinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
void GetIndexInfo(
LPCTSTR lpszName,
CDaoIndexInfo& indexinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
Parameter
nIndex
Indeks numerik objek Indeks dalam kumpulan Indeks berbasis nol tabel, untuk pencarian berdasarkan posisinya dalam koleksi.
indexinfo
Referensi ke struktur CDaoIndexInfo .
dwInfoOptions
Opsi yang menentukan informasi mana tentang indeks yang akan diambil. Opsi yang tersedia tercantum di sini bersama dengan apa yang menyebabkan fungsi kembali:
AFX_DAO_PRIMARY_INFO
Nama, Info Bidang, Bidang. Gunakan opsi ini untuk performa tercepat.AFX_DAO_SECONDARY_INFO
Informasi utama, plus: Primer, Unik, Berkluster, Abaikan Null, Diperlukan, AsingAFX_DAO_ALL_INFO
Informasi primer dan sekunder, plus: Jumlah Yang Berbeda
lpszName
Penunjuk ke nama objek indeks, untuk pencarian berdasarkan nama.
Keterangan
Satu versi fungsi memungkinkan Anda mencari indeks berdasarkan posisinya dalam koleksi. Versi lainnya memungkinkan Anda mencari indeks berdasarkan nama.
Untuk deskripsi informasi yang dikembalikan, lihat struktur CDaoIndexInfo . Struktur ini memiliki anggota yang sesuai dengan item informasi yang tercantum di atas dalam deskripsi dwInfoOptions. Saat Anda meminta informasi di satu tingkat, Anda juga mendapatkan informasi untuk tingkat sebelumnya.
Untuk informasi terkait, lihat topik "Properti Atribut" di Bantuan DAO.
CDaoTableDef::GetName
Panggil fungsi anggota ini untuk mendapatkan nama tabel yang ditentukan pengguna.
CString GetName();
Tampilkan Nilai
Nama yang ditentukan pengguna untuk tabel.
Keterangan
Nama ini dimulai dengan huruf dan dapat berisi maksimal 64 karakter. Ini dapat mencakup angka dan karakter garis bawah tetapi tidak dapat menyertakan tanda baca atau spasi.
Untuk informasi terkait, lihat topik "Properti Nama" di Bantuan DAO.
CDaoTableDef::GetRecordCount
Panggil fungsi anggota ini untuk mengetahui berapa banyak rekaman dalam objek CDaoTableDef
.
long GetRecordCount();
Tampilkan Nilai
Jumlah rekaman yang diakses dalam objek tabledef.
Keterangan
Memanggil GetRecordCount
objek jenis CDaoTableDef
tabel mencerminkan perkiraan jumlah rekaman dalam tabel dan langsung terpengaruh saat rekaman tabel ditambahkan dan dihapus. Transaksi yang digulung balik akan muncul sebagai bagian dari jumlah rekaman hingga Anda memanggil CDaoWorkSpace::CompactDatabase. Objek CDaoTableDef
tanpa rekaman memiliki pengaturan properti jumlah rekaman 0. Saat bekerja dengan tabel terlampir atau database ODBC, GetRecordCount
selalu mengembalikan -1.
Untuk informasi terkait, lihat topik "Properti RecordCount" di Bantuan DAO.
CDaoTableDef::GetSourceTableName
Panggil fungsi anggota ini untuk mengambil nama tabel terlampir dalam database sumber.
CString GetSourceTableName();
Tampilkan Nilai
Objek CString
yang menentukan nama sumber tabel terlampir, atau string kosong jika tabel data asli.
Keterangan
Tabel terlampir adalah tabel dalam database lain yang ditautkan ke database Microsoft Jet. Data untuk tabel terlampir tetap berada di database eksternal, di mana tabel tersebut dapat dimanipulasi oleh aplikasi lain.
Untuk informasi terkait, lihat topik "Properti SourceTableName" di Bantuan DAO.
CDaoTableDef::GetValidationRule
Panggil fungsi anggota ini untuk mengambil aturan validasi untuk tabledef.
CString GetValidationRule();
Tampilkan Nilai
Objek CString
yang memvalidasi data dalam bidang saat diubah atau ditambahkan ke tabel.
Keterangan
Aturan validasi digunakan sehubungan dengan operasi pembaruan. Jika tabledef berisi aturan validasi, pembaruan untuk tabledef tersebut harus cocok dengan kriteria yang telah ditentukan sebelum data diubah. Jika perubahan tidak cocok dengan kriteria, pengecualian yang berisi nilai GetValidationText akan dilemparkan. CDaoTableDef
Untuk objek, ini CString
baca-saja untuk tabel terlampir dan baca/tulis untuk tabel dasar.
Untuk informasi terkait, lihat topik "ValidationRule Property" di Bantuan DAO.
CDaoTableDef::GetValidationText
Panggil fungsi ini untuk mengambil string yang akan ditampilkan saat pengguna memasukkan data yang tidak cocok dengan aturan validasi.
CString GetValidationText();
Tampilkan Nilai
Objek CString
yang menentukan teks yang ditampilkan jika pengguna memasukkan data yang tidak cocok dengan aturan validasi.
Keterangan
CDaoTableDef
Untuk objek, ini CString
baca-saja untuk tabel terlampir dan baca/tulis untuk tabel dasar.
Untuk informasi terkait, lihat topik "ValidationText Property" di Bantuan DAO.
CDaoTableDef::IsOpen
Panggil fungsi anggota ini untuk menentukan apakah CDaoTableDef
objek saat ini terbuka.
BOOL IsOpen() const;
Tampilkan Nilai
Bukan nol jika CDaoTableDef
objek terbuka; jika tidak, 0.
Keterangan
CDaoTableDef::m_pDatabase
Berisi penunjuk ke objek CDaoDatabase untuk tabel ini.
Keterangan
CDaoTableDef::m_pDAOTableDef
Berisi penunjuk ke antarmuka OLE untuk objek tabledef DAO yang mendasar CDaoTableDef
objek.
Keterangan
Gunakan pointer ini jika Anda perlu mengakses antarmuka DAO secara langsung.
CDaoTableDef::Open
Panggil fungsi anggota ini untuk membuka tabledef yang sebelumnya disimpan dalam koleksi TableDef database.
virtual void Open(LPCTSTR lpszName);
Parameter
lpszName
Penunjuk ke string yang menentukan nama tabel.
Keterangan
CDaoTableDef::RefreshLink
Panggil fungsi anggota ini untuk memperbarui informasi koneksi untuk tabel terlampir.
void RefreshLink();
Keterangan
Anda mengubah informasi koneksi untuk tabel terlampir dengan memanggil SetConnect pada objek yang CDaoTableDef
sesuai lalu menggunakan RefreshLink
fungsi anggota untuk memperbarui informasi. Saat Anda memanggil RefreshLink
, properti tabel terlampir tidak diubah.
Untuk memaksa informasi koneksi yang dimodifikasi berlaku, semua objek CDaoRecordset yang terbuka berdasarkan tabledef ini harus ditutup.
Untuk informasi terkait, lihat topik "Metode RefreshLink" di Bantuan DAO.
CDaoTableDef::SetAttributes
Mengatur nilai yang menunjukkan satu atau beberapa CDaoTableDef
karakteristik objek.
void SetAttributes(long lAttributes);
Parameter
lAttributes
Karakteristik tabel yang diwakili oleh CDaoTableDef
objek dan dapat berupa jumlah konstanta ini:
Terus-menerus | Deskripsi |
---|---|
dbAttachExclusive |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan tabel adalah tabel terlampir yang dibuka untuk penggunaan eksklusif. |
dbAttachSavePWD |
Untuk database yang menggunakan mesin database Microsoft Jet, menunjukkan bahwa ID pengguna dan kata sandi untuk tabel terlampir disimpan dengan informasi koneksi. |
dbSystemObject |
Menunjukkan tabel adalah tabel sistem yang disediakan oleh mesin database Microsoft Jet. |
dbHiddenObject |
Menunjukkan tabel adalah tabel tersembunyi yang disediakan oleh mesin database Microsoft Jet. |
Keterangan
Saat mengatur beberapa atribut, Anda dapat menggabungkannya dengan menjumlahkan konstanta yang sesuai menggunakan operator bitwise-OR. Pengaturan dbAttachExclusive
pada tabel yang tidak terpasang menghasilkan pengecualian. Menggabungkan nilai berikut juga menghasilkan pengecualian:
dbAttachExclusive | dbAttachedODBC
dbAttachSavePWD | dbAttachedTable
Untuk informasi terkait, lihat topik "Properti Atribut" di Bantuan DAO.
CDaoTableDef::SetConnect
CDaoTableDef
Untuk objek yang mewakili tabel terlampir, objek string terdiri dari satu atau dua bagian (penentu jenis database dan jalur ke database).
void SetConnect(LPCTSTR lpszConnect);
Parameter
lpszConnect
Penunjuk ke ekspresi string yang menentukan parameter tambahan untuk diteruskan ke ODBC atau driver ISAM yang dapat diinstal.
Keterangan
Jalur seperti yang ditunjukkan pada tabel di bawah ini adalah jalur lengkap untuk direktori yang berisi file database dan harus didahului oleh pengidentifikasi "DATABASE=". Dalam beberapa kasus (seperti halnya database Microsoft Jet dan Microsoft Excel), nama file tertentu disertakan dalam argumen jalur database.
Catatan
Jangan sertakan spasi kosong di sekitar pernyataan jalur masuk yang sama dari formulir "DATABASE=drive:\\path". Ini akan mengakibatkan pengecualian dilemparkan dan koneksi gagal.
Tabel berikut ini memperlihatkan kemungkinan jenis database dan penentu dan jalur database terkaitnya:
Jenis Database | Penentu | Jalur |
---|---|---|
Database menggunakan mesin database Jet | "[ database ];" |
" drive :\\ nama file jalur\\ . MDB" |
dBASE III | "dBASE III;" | " drive :\\ jalur" |
dBASE IV | "dBASE IV;" | " drive :\\ jalur" |
dBASE 5 | "dBASE 5.0;" | " drive :\\ jalur" |
Paradox 3.x | "Paradox 3.x;" | " drive :\\ jalur" |
Paradox 4.x | "Paradox 4.x;" | " drive :\\ jalur" |
Paradox 5.x | "Paradox 5.x;" | " drive :\\ jalur" |
Excel 3.0 | "Excel 3.0;" | " drive :\\ nama file jalur\\ .XLS" |
Excel 4.0 | "Excel 4.0;" | " drive :\\ nama file jalur\\ .XLS" |
Excel 5.0 atau Excel 95 | "Excel 5.0;" | " drive :\\ nama file jalur\\ .XLS" |
Excel 97 | "Excel 8.0;" | " drive :\\ nama file jalur\ .XLS" |
Impor HTML | "Impor HTML;" | " drive :\\ nama file jalur\ " |
Ekspor HTML | "Ekspor HTML;" | " drive :\\ jalur" |
Teks | "Teks;" | "drive:\\path" |
ODBC | "ODBC; DATABASE= database ; UID= pengguna; PWD= kata sandi; DSN= datasourcename; LOGINTIMEOUT= detik;" (Ini mungkin bukan string koneksi lengkap untuk semua server; ini hanyalah contoh. Sangat penting untuk tidak memiliki spasi di antara parameter.) |
Tidak |
Exchange | "Pertukaran; MAPILEVEL= folderpath; [TABLETYPE={ 0 | 1 };] [PROFILE= profil;] [PWD= kata sandi;] [DATABASE= database ;]" |
"drive:\\ path\\ filename. MDB" |
Catatan
Btrieve tidak lagi didukung pada DAO 3.5.
Anda harus menggunakan garis miring terbelakang ganda (\\) dalam string koneksi. Jika Anda telah memodifikasi properti koneksi yang sudah ada menggunakan SetConnect
, Anda harus memanggil RefreshLink. Jika Anda menginisialisasi properti koneksi menggunakan SetConnect
, Anda tidak perlu memanggil RefreshLink
, tetapi jika Anda memilih untuk melakukannya, tambahkan tabledef terlebih dahulu.
Jika kata sandi diperlukan tetapi tidak disediakan, driver ODBC menampilkan kotak dialog masuk saat pertama kali tabel diakses dan sekali lagi jika koneksi ditutup dan dibuka kembali.
Anda dapat mengatur string koneksi untuk CDaoTableDef
objek dengan memberikan argumen sumber ke Create
fungsi anggota. Anda dapat memeriksa pengaturan untuk menentukan jenis, jalur, ID pengguna, kata sandi, atau sumber data ODBC database. Untuk informasi selengkapnya, lihat dokumentasi untuk driver tertentu.
Untuk informasi terkait, lihat topik "Sambungkan Properti" di Bantuan DAO.
CDaoTableDef::SetName
Panggil fungsi anggota ini untuk mengatur nama yang ditentukan pengguna untuk tabel.
void SetName(LPCTSTR lpszName);
Parameter
lpszName
Penunjuk ke ekspresi string yang menentukan nama untuk tabel.
Keterangan
Nama harus dimulai dengan huruf dan dapat berisi maksimal 64 karakter. Ini dapat mencakup angka dan karakter garis bawah tetapi tidak dapat menyertakan tanda baca atau spasi.
Untuk informasi terkait, lihat topik "Properti Nama" di Bantuan DAO.
CDaoTableDef::SetSourceTableName
Panggil fungsi anggota ini untuk menentukan nama tabel terlampir atau nama tabel dasar tempat CDaoTableDef
objek berada, karena ada di sumber asli data.
void SetSourceTableName(LPCTSTR lpszSrcTableName);
Parameter
lpszSrcTableName
Penunjuk ke ekspresi string yang menentukan nama tabel di database eksternal. Untuk tabel dasar, pengaturannya adalah string kosong ("").
Keterangan
Anda kemudian harus memanggil RefreshLink. Pengaturan properti ini kosong untuk tabel dasar dan baca/tulis untuk tabel terlampir atau objek yang tidak ditambahkan ke koleksi.
Untuk informasi terkait, lihat topik "Properti SourceTableName" di Bantuan DAO.
CDaoTableDef::SetValidationRule
Panggil fungsi anggota ini untuk mengatur aturan validasi untuk tabledef.
void SetValidationRule(LPCTSTR lpszValidationRule);
Parameter
lpszValidationRule
Penunjuk ke ekspresi string yang memvalidasi operasi.
Keterangan
Aturan validasi digunakan sehubungan dengan operasi pembaruan. Jika tabledef berisi aturan validasi, pembaruan untuk tabledef tersebut harus cocok dengan kriteria yang telah ditentukan sebelum data diubah. Jika perubahan tidak cocok dengan kriteria, pengecualian yang berisi teks GetValidationText ditampilkan.
Validasi hanya didukung untuk database yang menggunakan mesin database Microsoft Jet. Ekspresi tidak dapat merujuk ke fungsi yang ditentukan pengguna, fungsi agregat domain, fungsi agregat SQL, atau kueri. Aturan validasi untuk CDaoTableDef
objek dapat merujuk ke beberapa bidang dalam objek tersebut.
Misalnya, untuk bidang bernama hire_date dan termination_date, aturan validasi mungkin:
myTableDef.SetValidationRule(_T("termination_date > hire_date"));
Untuk informasi terkait, lihat topik "ValidationRule Property" di Bantuan DAO.
CDaoTableDef::SetValidationText
Panggil fungsi anggota ini untuk mengatur teks pengecualian aturan validasi untuk CDaoTableDef
objek dengan tabel dasar yang mendasarinya yang didukung oleh mesin database Microsoft Jet.
void SetValidationText(LPCTSTR lpszValidationText);
Parameter
lpszValidationText
Penunjuk ke ekspresi string yang menentukan teks yang ditampilkan jika data yang dimasukkan tidak valid.
Keterangan
Anda tidak dapat mengatur teks validasi tabel terlampir.
Untuk informasi terkait, lihat topik "ValidationText Property" di Bantuan DAO.
Lihat juga
Kelas CObject
Bagan Hierarki
Kelas CDaoDatabase
Kelas CDaoRecordset