So ... Access 97 is really NOT part of this situation ... you are probably dealing with VB6.0 and JET 4.0 simply because that is what is provided by VB6, if A97 is installed on your machine, then you have JET 3.x on your system as well, but when manipulating the file through VB6 and JET OLEDB 4.0, I am fairly certain you are using the JET 4.0 installation on your machine to manipulate a lower formated MDB. Again, A97 is really not part of this whole thing. Although I will grant to you that A97 uses JET 3.x and thus will have the ability to interface with the file you have created.
So ... You make the statement:
>> MDB file created by Access 97 through JET OLEDB 4.0. <<
Then later ask if JET OLEDB 4.0 is compatible with A97 ??? ... confuses me as to how the file was created, so I will ASSUME you have created a JET 3.x file (the MDB file) with the JET OLEDB 4.0 provider through some VB6 code. I assume that you did this via the ADOX object library and the .Create method of a ADOX.Catalog object, with the provider specific property named "Jet OLE:Engine Type" set to a value of 4, thus indicating a JET 3.x format level for the MDB. If that is the case, then you can set the "Jet OLE:Engine Type" to a value of 5 in order to create an MDB file at the JET 4.0 format level, which is the prefered format. Since, your client has explicitly set the criteria for a JET 3.x level MDB, then I beleive you are stuck with page level locking ... but ... you may want to open your database with the provider specific property named "Jet OLEDB:database Locking Mode" set to value of 1 in your connection string, to indicate you want Row Level Locking. Maybe the JET OLEDB 4.0 Provider can pull a few strings, since in all likelyhood you are using the JET 4.0 engine to manipulate a JET 3.x file and acheive your request... but I'm doubtful. Please take note that the FIRST user to open the database sets the locking mode for all subsequent connections to the MDB file, regardless of this setting used to open the MDB.