Can't help you with #1 as I don't use Plone anymore. I prefer using plain Zope and building my site around that. There's not much that Plone adds for me, besides a skin.
As for 2, I do have some experience doing that. First, create a ZSQL statement that does something like this: select * from database then, assuming you have called it 'query1' here's the ZPT you could put in that would use the results from your query (assuming your query returned columns named 'name' and 'salary'). <div tal:repeat="item query1"> <hr> <span tal:content="item/name">John Doe</span><br> <span tal:content="item/salary">$500,000</span><br> </div> P.S. This is the wrong group to post this question on. -- http://mail.python.org/mailman/listinfo/python-list