Contact US

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

one quick question...

one quick question...

one quick question...


Firstly, am no Pervasive guru.. i have infact been working on it only for the past couple of weeks....

We recently switched from Pervasive v7.0 to Pervasive 2000i.
and I had found that the existing tables seemed to fail the Consistency tests run on our db. I realized that I had to recreate the DDFs for my existing Btrieve files and had tried using the BtSearch32 utility...
I was looking for more options of recreating the DDFs when I bumped into a feature in the PCC...

I had created a new database with the fresh DDFs and being a Microsoft guy ;) I tried to drag a table from the existing database and drop it into my new db.
I was astounded by the results. The PCC showed the message that the table was being copied from the existing database to the new database I had just created.
Following the tables creation in my new database (by the drag and drop method ofcourse!!), I had run the consistency tests and the table seemed to PASS THE CONSISTENCY TEST!
The table had earlier failed the test in my existing table.

I had checked up the FILE.ddf, FIELD.ddf and INDEX.ddf and they seemed to have been updated correctly.
Now the only *catch* is that the data file of the new table created (remember? by the drag and drop method ofcourse!!) is in the 'mkd' format.
Earlier the table was in its 'btr' format.

My question is this:
"What is the difference between the 'Microkernel (mkd)' file and the 'Btrieve (btr)' file and how would this affect my database? Also is there any way by which I can convert the 'mkd' files to the 'btr' equivalent??"

Thanks for the help thats on its way...

RE: one quick question...

A Btrieve file can have any extension - or even no extension.  There is no distinction by Btrieve between *.mkd, *.btr, *.dat, *.bt, etc.  Customers can choose any name & extension.  

The only requirement is that Btrieve files are uniquely named regardless of their extension.  In other words, you can't have two files with the same name but different extensions.  Btrieve will not distinguish between Person.dta and Person.mkd.

So, no conversion is required.  If you have a database with a table definition referencing a .mkd file, but your physical Btrieve file actually has a .btr extension, you have two choices.  You can rename your Btrieve file to .mkd (which could have drastic affects on other applications), or you can edit the table definition in the DDFs to specify the file as .btr.  

There are two ways to change the file name in the DDFs.  But, before you do anything, make a backup of your DDFs.

If you are on Pervasive.SQL 2000i SP3 or later, you can use the following SQL statement in a SQL Data Manager window:
   ALTER TABLE person IN DICTIONARY USING 'person.btr'

If you don't like executing SQL, you can use PCC to do this as well.  Go into PCC and open up your database.  Right click on the table you want to change, and select Tasks/Edit Table Design.  Before you change anything - go to Tools/Options and make sure the "Table Link Mode" box is NOT checked.  This way, any changes you make will only be made in the DDFs and your data file will not be touched.  

Then, go to the Statistics tab and edit the Table Location field.  Make sure you hit enter after editing, and then Save the change.

Hope this helps!

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close