Actually I am not sure why u are trying to create a .db as most of the tools are able to read the .lib directly. .db is still around as it was something which Synopsys created to protect propriety information. every vendor gives a .lib and most tools read .libs.
As far as the warning "no function" is concerned. The function statement is required for cells which are used in the synthesis process like nand,and,flop etc. but bigger complex blocks are not synthesized so they don't need a function nor they can have a function like PLL, ADC, etc. They are treated as black box by the tools. the .libs have the timing arcs for which the timing has to be closed.