1) Хранить описание (набор характеристик) этого примитива в том виде, в котором тебе удобно, но так, чтобы ты потом имел возможность по информации из базы отрисовать такой примитив.
2) По поводу работы с базами - ничего не скажу, но думаю, что dbconnect использовать не стоит.
3) Что подразумевается под группой примитивов? В AutoCAD'е есть понятие группа (GROUP), которая объединяет примитивы, с которыми можно работать и по отдельности. Одни и теже примитивы могут входить в разные группы. Фактически они связаны между собой реакторами. Еще в AutoCAD'е есть понятие блок (BLOCK) - это набор примитивов, с которыми можно работать только со всеми вместе, и если изменить(или удалить/добавить) один из примитивов из блока, то он будет изменен сразу из всех присутствующих на чертеже вставках. Похоже, что имеется ввиду именно это.
4) Нужно как-то идентифицировать свои объекты, чтобы их можно было перебрать. Все зависит от того, что будет находится во внешней базе. Можно, например, хранить метки (Handle) своих примитивов, можно в самим примитивам дописывать расширенные данные (Xdata), можно помещать информацию в Xrecord и т.д.
5) Создать свой собственный примитив. ObjectARX это позволяет сделать. Только нужно очень тщательно подойти к постановке задачи.
P.S. В общем-то многое из того, что я написал, это азы AutoCAD не имеющие к ObjectARX практически никакого отношения. Мое мнение - сначала нужно изучить хотя бы в общих чертах AutoCAD и его возможности, перед тем как начать программировать, иначе вопросы начнут появляться лавинообразно, а многое придется вообще передылывать...
Так что "рулить" придется долго!