ID Artikel: 279334 - Kajian Terakhir: 23 September 2011 - Revisi: 2.0

ACC97: Bagaimana untuk memperbaiki Database Jet 3.5 rusak

Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.
Moderat: Memerlukan dasar makro, coding, dan interoperabilitas keterampilan.

Untuk Microsoft Access 2.0/Jet 2.x dan akses 95/Jet 3.0 versi dari artikel ini, lihat 109953  (http://support.microsoft.com/kb/109953/EN-US/ ) .

Untuk versi Microsoft Access 2000/Jet 4.0 artikel ini, lihat 209137  (http://support.microsoft.com/kb/209137/EN-US/ ) .

Pada Halaman ini

Perbesar semua | Perkecil semua

RINGKASAN

Faktor-faktor lingkungan dapat meninggalkan file database rusak. Gejala database rusak dapat berkisar dari #Deleted muncul dalam catatan tertentu, ketidakmampuan untuk membuka salah satu objek dalam database, ketidakmampuan lengkap untuk membuka berkas di akses. Perbaikan dan utilitas kompak dalam Microsoft Access adalah alat yang berguna untuk memulihkan dan mengoptimalkan file database Microsoft Access. Artikel ini menjelaskan utilitas ini dan menawarkan alternatif tambahan untuk perbaikan database rusak. Juga, informasi tentang apa yang dapat menyebabkan korupsi disediakan di bagian "Khas menyebabkan MDB File korupsi" dari artikel ini.

INFORMASI LEBIH LANJUT

Meskipun langkah-langkah yang dijelaskan dalam artikel ini biasanya berhasil dalam memulihkan rusak file database, untuk menjaga data Anda, Anda harus membuat salinan cadangan dari file database Anda sesering yang Anda bisa.

Perbaikan dan kompak utilitas

Utilitas perbaikan

Utilitas perbaikan dapat memperbaiki database dengan jenis tertentu kerusakan. Mencoba untuk memperbaiki hanya meja, query, dan indeks di database. Tidak mencoba untuk memperbaiki bentuk rusak, laporan, makro, atau modul; ini, namun, menyalinnya ke database baru, diperbaiki.

PENTING: Menjalankan Perbaikan Database perintah hanya ketika Microsoft Jet database engine mengembalikan pesan galat yang menunjukkan bahwa perbaikan harus dijalankan. The Perbaikan Database perintah tidak dapat dijalankan di bawah keadaan lain.

Kompak utilitas

Utilitas kompak menghilangkan ruang kosong dalam database yang ada. Itu tidak Jadi dengan menciptakan database tujuan baru dan menyalin setiap objek dalam database lama ke yang baru. Jika Anda memilih untuk kompak database ke dalam nama database asli bukan untuk database baru, utilitas kompak menciptakan database sementara, ekspor semua objek dari asli database ke dalam database sementara, menghilangkan database asli, dan kemudian mengganti nama database sementara untuk nama database asli.

PENTING: Pemadatan database sering adalah pemeliharaan preventif terbaik untuk .mdb file. Berikut ini adalah daftar tindakan utilitas kompak melakukan.
  • Mengorganisir tabel halaman sehingga mereka tinggal di dekat database halaman. Hal ini meningkatkan kinerja karena tabel tidak lagi terfragmentasi di database.
  • Reclaims ruang yang tidak digunakan yang dibuat oleh objek dan catatan penghapusan. Ketika objek atau catatan dihapus dari database, ruang mereka menduduki ditandai sebagai tersedia untuk tambahan baru ke database. Namun, ukuran database pernah menyusut kecuali database dipadatkan. Untuk database di mana objek dan catatan sering ditambahkan, dihapus, dan diperbarui, Anda harus kompak sering.
  • Me-reset incrementing AutoNumber bidang sehingga nilai berikutnya yang dialokasikan akan menjadi salah satu lebih dari nilai tertinggi yang pernah di sisanya catatan. Sebagai contoh, jika semua catatan dalam database telah dihapus, setelah pemadatan database, nilai akan dimasukkan ke bidang AutoNumber akan 1 ketika catatan berikutnya ditambahkan. Jika nilai tertinggi yang tersisa AutoNumber dalam database adalah 50, setelah pemadatan, nilai akan menjadi 51 ketika catatan berikutnya ditambahkan. Perhatikan bahwa hal ini berlaku bahkan jika catatan yang berisi nilai-nilai yang lebih tinggi dari 50 ditambahkan sebelumnya tetapi dihapus sebelum untuk pemadatan.
  • Melahirkan kembali tabel statistik yang digunakan dalam proses optimasi permintaan. Statistik ini dapat menjadi basi dari waktu ke waktu, biasanya jika transaksi digulung kembali, atau jika database tidak benar ditutup karena kehilangan kekuasaan atau kegagalan untuk sepenuhnya keluar dari program yang menggunakan Microsoft Jet sebelum Anda mematikan komputer.
  • Bendera semua pertanyaan sehingga mereka akan recompiled waktu berikutnya yang query dijalankan. Hal ini penting karena dapat mengubah database statistik dan permintaan sebelumnya dikompilasi mungkin memiliki rencana permintaan tidak akurat.

Pedoman penting untuk pemadatan Database

Sebelum pemadatan database, kondisi berikut harus dipenuhi:

Pengguna pemadatan database harus log on menggunakan account yang memiliki mengubah desain atau Administer izin keamanan untuk semua tabel dalam database.

Cukup ruang disk harus ada untuk kedua versi asli dan dipadatkan database, bahkan jika database dipadatkan melalui antarmuka pengguna Microsoft Access menggunakan nama berkas yang sama. Database dipadatkan dinamai sebagai database asli hanya ketika pemadatan sukses.

Pengguna lain tidak harus memiliki database yang terbuka. Ketika database dipadatkan, itu harus terbuka secara eksklusif oleh Microsoft Jet untuk mencegah pengguna dari mengakses dan memodifikasi database selama proses.

Memulihkan Database rusak

Jika Anda mengalami Microsoft Jet 3.x kesalahan nomor 3197, 3343, atau 3015, silakan juga lihat artikel berikut pada Basis Pengetahuan Microsoft:
182867  (http://support.microsoft.com/kb/182867/EN-US/ ) ACC: Jet Database Engine 3.x pesan galat karena untuk korupsi
Langkah-langkah berikut menjelaskan metode umum untuk memperbaiki yang rusak database:
  1. Membuat salinan file database rusak (.mdb) sebagai cadangan.
  2. Pastikan berkas .mdb ditutup dan menghapus file .ldb yang sesuai, jika ada.

    CATATAN: Berkas .ldb digunakan untuk menentukan catatan yang terkunci dalam database bersama dan oleh siapa. Jika database dibuka untuk penggunaan bersama, .ldb file dibuat dengan nama yang sama sebagai database sesuai (.mdb). Sebagai contoh, jika Anda membuka (untuk digunakan bersama) database contoh Northwind.mdb di folder C:\Program Files\Microsoft Office\Office\Samples, kemudian sebuah file bernama Northwind.ldb yang secara otomatis dibuat dalam folder yang sama. .Ldb file secara otomatis dihapus setelah pengguna terakhir telah keluar database dengan dua pengecualian - ketika pengguna terakhir tidak harus menghapus izin folder yang berisi .mdb file, atau ketika database rusak.

    Untuk informasi tambahan tentang .ldb file, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
    136128  (http://support.microsoft.com/kb/136128/EN-US/ ) ACC: Pengenalan .ldb file (95/97)
    Dalam pemecahan masalah apa yang menyebabkan korupsi database, Anda dapat melihat isi .ldb file dengan menjalankan utilitas Ldbview. Untuk informasi tentang utilitas ini, lihat bagian "Bagaimana untuk menentukan apa pengguna/workstation yang menyebabkan the File untuk menjadi ditandai menduga" dari artikel ini.
  3. Jalankan utilitas kompak sebagai berikut:
    1. Jika database terbuka, tutup.
    2. Pada Alat menu, titik Utiliti Database, lalu klik Kompak Database.

      Pada titik ini, periksa database Anda untuk melihat jika kerusakan sudah diperbaiki. Jika tidak, lanjutkan dengan langkah-langkah yang tersisa.
  4. Jika kerusakan dalam tabel, permintaan, atau indeks, jalankan utilitas perbaikan sebagai berikut:

    PENTING: Menjalankan Perbaikan Database perintah hanya ketika Microsoft Jet database engine mengembalikan pesan yang menunjukkan bahwa perbaikan harus dijalankan. The Perbaikan Database perintah tidak dapat dijalankan di bawah keadaan lain.
    1. Jika database terbuka, tutup.
    2. Pada Alat menu, titik Utiliti Database, lalu klik Perbaikan Database.
    3. Pilih file rusak di Perbaikan Database kotak dialog, dan kemudian klik Perbaikan.

      Jika perbaikan ini berhasil, Anda akan menerima pesan berikut:
      Berhasil diperbaiki database '<path><database name="">'. </database></path>
      Jika perbaikan tidak berhasil, Anda akan menerima pesan yang menyatakan begitu. Ini berarti bahwa kerusakan untuk tabel, permintaan, atau indeks begitu parah bahwa itu tidak dapat diperbaiki, atau kerusakan pada objek yang Perbaikan utilitas tidak mempengaruhi.
  5. Jika kerusakan di meja dan langkah-langkah yang sebelumnya tidak memiliki sembuh itu, coba berikut:
    1. Dalam Microsoft Access, mengekspor meja ke file ASCII (berpembatas teks). Untuk informasi lebih lanjut tentang topik ini, mencari frase "berkas berpembatas teks", dan kemudian melihat topik "mengekspor mengakses data" menggunakan akses Microsoft indeks membantu.
    2. Menghapus hubungan apapun terkait dengan tabel ini, dan kemudian hapus tabel dari database.
    3. Kompak database.
    4. Membuat ulang tabel dan hubungan itu.
    5. Menggunakan word processor, memeriksa file ASCII untuk data yang buruk atau aneh dan menghapus catatan mereka. Menyimpan file dalam format file teks ASCII.
    6. Mengimpor kembali ASCII file ke tabel baru dibentuk kembali. Untuk informasi lebih lanjut tentang topik ini, pencarian di frase "delimited file teks", dan kemudian melihat topik "mengimpor atau menghubungkan" yang menggunakan akses Microsoft indeks membantu.
    7. Masukkan ulang catatan Anda dipaksa untuk menghapus.
  6. Jika langkah-langkah sebelumnya gagal untuk memulihkan database Anda rusak, mencoba menciptakan database baru dan impor objek, satu per satu, dari database lama ke yang baru. Kemudian menciptakan kembali hubungan. Teknik ini memecahkan masalah dengan sistem rusak tabel dalam database.
  7. Jika kerusakan dalam bentuk atau laporan, kerusakan dapat berupa dalam bentuk atau laporan itu sendiri atau dalam satu atau lebih kontrol pada formulir atau laporan. Anda dapat Hapus formulir atau laporan dan impor dari salinan cadangan dari database Anda atau menggunakan salah satu opsi berikut:
    • Jika kerusakan dalam bentuk atau laporan itu sendiri, menciptakan bentuk baru atau baru melaporkan, dan kemudian salin kontrol dari formulir atau laporan asli.
    • Jika kerusakan dalam kontrol pada formulir atau laporan, membuat bentuk baru atau laporan baru, dan kemudian menciptakan kembali kontrol pada bentuk baru atau laporan. Cara terbaik untuk kembali menciptakan semua kontrol, karena tidak ada cara untuk memberitahu kontrol yang rusak.
  8. Jika kerusakan di makro atau modul, kerusakan dapat makro atau modul itu sendiri atau dalam isi makro atau modul. Anda dapat menghapus makro atau modul dan impor dari salinan cadangan dari database Anda atau menggunakan salah satu opsi berikut:
    • Jika kerusakan dalam makro atau modul itu sendiri, membuat makro baru atau modul baru, dan kemudian menyalin isi asli makro atau modul.
    • Kerusakan bisa melibatkan karakter non-ASCII tertanam dalam modul. Simpan modul sebagai file teks, menghapus data yang buruk atau aneh, dan kemudian kembali file teks ke dalam modul baru.
    • Jika kerusakan dalam isi makro atau modul, Anda harus membuat makro baru atau modul, dan kemudian membuat ulang isi asli makro atau modul.
  9. Jika korupsi melibatkan menjadi tidak dapat membuka kelas modul formulir atau laporan, atau melihat desain sebuah modul, Anda mungkin ingin mencoba / menguraikan saklar baris perintah. Sangat disarankan bahwa Anda membuat salinan cadangan dari database sebelum mencoba metode ini. Berikut adalah contoh perintah dengan / menguraikan beralih, dimana MSAccess.exe adalah di lokasi default dan database DB1.mdb di folder c: \:
    C:\Program Files\Microsoft Office\Office\MSAccess.exe / menguraikan C:\DB1.mdb
    Setelah menjalankan perintah ini dari Menjalankan kotak, Anda diminta untuk mengkompilasi database setelah menggunakan / menguraikan.
  10. Mempertimbangkan men-download utilitas Jetcomp.exe. Menjalankan Jetcomp.exe dapat dalam beberapa kasus memperbaiki database yang jika tidak memecahkan. Untuk informasi tambahan mengenai cara mendapatkan Jetcomp.exe, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
    172733  (http://support.microsoft.com/kb/172733/EN-US/ ) Versi terbaru dari Microsoft Jet 3.5 tersedia untuk di-Download
Jika Anda tidak dapat memperbaiki database dengan langkah-langkah ini, database adalah mungkin rusak bisa diperbaiki. Jika hal ini terjadi, Anda harus memulihkan terakhir Anda backup database atau membuat ulang database.

Sebagai alternatif akhir, beberapa konsultan dapat memberikan Microsoft Access layanan perbaikan database. Karena ini adalah layanan khusus, cara yang paling efisien untuk mencari konsultan adalah untuk mengirimkan sebuah pesan di Microsoft Access "Pihak ketiga dan kelompok pengguna" Internet newsgroup, yang memiliki alamat grup berita berikut:
Microsoft.Public.Access.3rdpartyusrgrp
Untuk informasi tambahan tentang Microsoft akses Internet newsgroup, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
150057  (http://support.microsoft.com/kb/150057/EN-US/ ) ACC: Microsoft Access newsgroup tersedia di Internet

Khas penyebab korupsi MDB File

Ada tiga penyebab utama korupsi di akses/Jet mdb file.

Database adalah karena tersangka/korup terganggu menulis operasi

Anda harus selalu berhenti akses benar dengan mengklik Keluar atau Tutup pada Berkas menu. Jika database terbuka dan menulis data bila akses normal dimatikan, Jet database engine dapat menandai berkas sebagai tersangka/rusak. Hal ini dapat terjadi jika komputer secara manual dinonaktifkan tanpa pertama mematikan Windows atau jika kekuatan hilang. Situasi yang lain mungkin tidak menutup akses tetapi mungkin masih mengganggu jet-Jet menulis data ke disk sementara database terbuka. Hal ini dapat terjadi, misalnya saat jaringan mengalami tabrakan data atau disk drive kerusakan. Jika salah satu gangguan ini terjadi, maka Jet dapat menandai database sebagai berpotensi rusak.

Ketika Jet dimulai Operasi tulis, itu menetapkan tanda, dan me-reset bendera ketika operasi selesai. Jika Operasi tulis terputus, bendera tetap ditetapkan. Ketika Anda mencoba untuk membuka database tersebut lagi, Jet menentukan bahwa bendera diatur dan laporan bahwa database rusak. Dalam kebanyakan kasus, data dalam database tidak benar-benar rusak, tapi tanda menetapkan bendera Jet yang korupsi mungkin terjadi. Dalam kasus seperti ini, pemadatan dan/atau memperbaiki database dapat biasanya mengembalikan database. Untungnya, ada cara untuk menentukan pengguna yang dan workstation adalah bertanggung jawab untuk menandai berkas sebagai tersangka. Lihat bagian "Bagaimana untuk menentukan apa pengguna/workstation yang menyebabkan the File untuk menjadi ditandai menduga" nanti dalam artikel ini.

Galat perangkat keras jaringan

Dalam hal ini, berkas korupsi tidak melibatkan mesin database Jet; lebih file secara harfiah rusak oleh beberapa penyebab luar. Penyebab dapat menjadi salah satu atau lebih link dalam rantai perangkat keras antara komputer yang database berada pada dan komputer yang memiliki database membuka. Daftar ini mencakup, namun tidak terbatas pada, kartu antarmuka jaringan, jaringan kabel, router, dan hub.

Perangkat keras berbasis korupsi biasanya ditandai dengan .mdb file yang tidak dapat dipulihkan melalui penggunaan dari pemadatan, memperbaiki, atau Jetcomp. Perangkat keras korupsi biasanya akan terjadi sampai hardware bertanggung jawab diperbaiki atau diganti.

Membuka dan menyimpan MDB File dalam Program lain

Tidak ada cara untuk memulihkan berkas .mdb yang dibuka dan kemudian disimpan dalam program selain akses. Sebagai contoh, Microsoft Word memungkinkan Anda untuk membuka akses database dan kemudian menyimpannya (meskipun itu tidak melayani baik tujuan untuk melakukannya karena jika Anda membuka sebuah file MDB di program lain, semua yang Anda dapat lihat diperpanjang karakter). Menyimpan file dengan cara ini akan menyebabkan berkas .mdb untuk meminta Anda untuk database password ketika Anda mencoba untuk membuka akses meskipun file mungkin tidak pernah dilindungi password akses. Password prompt terjadi dalam kasus tersebut karena byte pertama berkisar akses cek ketika membuka sebuah file adalah di mana database password akan. Jika byte yang berisi data rusak, akses memperlakukan berkas sebagai dilindungi sandi. Bahkan jika ada cara untuk berkeliling password prompt dalam kasus ini, database masih akan memecahkan karena struktur biner bergegas dan karena itu terbaca untuk akses. Memulihkan salinan cadangan dari file adalah satu-satunya solusi dalam kasus ini.Untuk informasi tambahan tentang masalah ini, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
223043  (http://support.microsoft.com/kb/223043/EN-US/ ) ACC: Database Password muncul meskipun itu tidak pernah diatur

Cara menentukan apa pengguna/workstation yang menyebabkan File yang ditandai tersangka

Anda dapat menentukan mana workstation dan pengguna menyebabkan Jet untuk menandai berkas .mdb sebagai tersangka dengan utilitas LDBView, yang tersedia dengan mendownload Jetutils.exe dari Website Microsoft berikut:
http://download.Microsoft.com/download/access97/utility1/1/WIN98/en-US/JETUTILS.EXE (http://download.microsoft.com/download/access97/utility1/1/WIN98/EN-US/JETUTILS.EXE)
Untuk informasi tambahan tentang utilitas Jet Microsoft, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
176670  (http://support.microsoft.com/kb/176670/EN-US/ ) ACC: Microsoft Jet utilitas tersedia di Pusat Download
Ldbview membiarkan Anda mengamati pengguna yang saat ini login ke database, serta pengguna yang mungkin telah meninggalkan file dalam keadaan tersangka.

Langkah-langkah yang dapat Anda ambil untuk membantu mencegah korupsi

  • Menghindari kehilangan kekuasaan selama menulis database. Kehilangan kekuatan dapat menyebabkan database dibiarkan dalam keadaan tersangka.
  • Menghindari menjatuhkan sambungan jaringan.
  • Menghindari penghentian abnormal dari Microsoft Jet koneksi seperti rugi daya, manual shutdown, memiliki shutdown Task Manager aplikasi, dan seterusnya.
  • Ketika pemrograman, tutup semua objek Data akses obyek (DAO) dan objek Data ActiveX (ADO) bahwa Anda memiliki terbuka. Contohnya Recordset, QueryDef, TableDef, dan Pangkalan Data objek.
  • Kesalahan fatal sistem hampir selalu menyebabkan penghentian abnormal. Jika database Anda rentan terhadap kesalahan fatal, Anda harus menyelesaikan kesalahan sebelum database menjadi terlalu rusak untuk membuka atau memulihkan.Untuk informasi tambahan tentang utilitas Jet Microsoft, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
    148424  (http://support.microsoft.com/kb/148424/EN-US/ ) ACC: Mengatasi masalah kesalahan sistem Fatal dalam Microsoft akses 95 dan Microsoft Access 97
  • Kompak database sering.

    PENTING: Jangan lari Perbaikan Database perintah di Access 97 kecuali Microsoft Jet meminta Anda untuk melakukannya.
  • Jangan lari IPX pada Windows NT Server di mana database Jet terletak di seluruh jaringan dan klien Microsoft Windows 95 dengan IPX/SPX. Sebaliknya, jalankan TCP-IP pada Windows NT Server dan stack protokol dual IPX dan TCP-IP pada klien Windows 95. Windows NT untuk Windows NT dengan IPX/SPX akan tidak menyebabkan masalah, atau akan Novell untuk klien.
  • Menghindari sejumlah besar membuka dan menutup operasi di loop (40.000 berturut-turut membuka/menutup operasi lebih dari 1.000.000.

Berlaku bagi:
  • Microsoft Access 97 Standard Edition
Kata kunci: 
kbdownload kbhowto kbusage kbmt KB279334 KbMtid
Penerjemahan MesinPenerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:279334  (http://support.microsoft.com/kb/279334/en-us/ )
Retired KB ArticleSanggahan Konten KB yang Tidak Lagi Diperbarui
Artikel ini berisi tentang produk yang tidak lagi didukung oleh Microsoft. Oleh karena itu, artikel ini disajikan ?sebagaimana adanya? dan tidak akan diperbarui.