You need to make sure you disable Migration otherwise it might alter your tables. I recommend to specify at connection level (not each table) so that you don't forget.
db = DAL("mssql2://YourID:YourPassword@YourServer/YourDB", migrate=False)
If table has Primary field called id
You're lucky. This meet with the convention of web2py
If table has primary key field called ID
Shoot, it's a capital letter... don't worry the code above will still work !
If table has primary key field called myid
Why didn't I name the field carefully.... no problem. You can still connect.
Since it's not field called id/ID, you need to define your primary field just like others and set primarykey for it.
If table has No primary key field
What's wrong with me ? ... don't worry here's what I found. You know what, the above code still works !