I've always hated the very concept of "sanctuary cities". Essentially, what cities who proclaim themselves to be "sanctuary cities" are doing is saying, "We don't give a hoot what the law says, we're not complying with it. So, now we have a situation where cities all over the country are declaring that they will not comply with federal law, which can occasionally lead illegal immigrants killing people: http://www.sfgate.com/cgi-bin/article.cgi?f=/g/a/2008/07/16/cstillwell.DTL. It seems pretty elementary to me that if these people had been deported, they would not have been here to commit their criminal acts.
I think that that there is a pretty easy solution to the problem of "sanctuary cities". The Federal Government should simply cut off all federal funding to city. If that city wants to flout federal law, why should it benefit from federal funds?