Yah that is what i am thinking that it is the relationship. You need to have a primary key on each table and then you need a foreign key field which links each record in your secondary tables to a row in your primary tables. When you configure your form, you add the primary table and then use the add table button to add additional tables you will be prompted for the relationship fields.
One thing that may be confusing you is that you can only see the matching rows when you query. So if you query on primary record you will only see the related secondary records. If you are looking for all of the data in the secondary to populate a drop down or use for selection then you would need to setup an additional secondary DC to the table itself to load this. However in this scenario you cannot submit to a secondary. That is where you get into some of the limitations.
If you are not a SQL expert, I would again recomend (DBXL) Database Accelerator, since it makes it much more straightforward for you as the InfoPath designer. Once it is setup then there is very little SQL admin and you can get at the information via the webservices without being dependent on them.