We moved recently and had all sorts of problems with DNS.
When we did the swing over most customers started hitting the new IPs right away. But some were still hitting the old IPs for weeks. We left a server up for a month or so. Eventually we went through the IIS logs on the old machine and called the customers telling them to flush DNS on there company or ISP DNS servers. That got the last of them moved over.
It was a small number of people that kept with the old IPs. Out of 20k customers, maybe 50 had issues after the first day.
If you have Active Directory enabled DNS, are you sure you're querying the same DNS server as you're writing the change to? If not, make sure you allow time for replication.
If it's not AD-enabled, are you closing the DNS console before querying? I'm pretty sure I read something about changes not being committed until you close it - sounds nuts, doesn't it, but I've never had non-integrated DNS so I've never been able or needed to test this.
EDIT
Is this what you're using? It says this "When the DNS_QUERY_STANDARD option is set, DNS uses the resolver cache, queries first with UDP, then retries with TCP if the response is truncated, and requests that the server to perform recursive resolution on behalf of the client to resolve the query."
If you've looked up the record before making the change, it'll be in your local DNS cache.
If you're using this option, the function will check your cache and won't go to the server if it finds the record in there.
ipconfig /flushdns
should clear your cache.
ipconfig /displaydns
will show you all cached records.
If this doesn't solve it, it gets more complicated as DNS servers can cache records as well, depending on their configuration.
If you've made the change and the (original) TTL period has expired (by which time it should be out of all of the caches) and you're still not seeing it in DNSQuery, I'd talk to your DNS Admins.
Best Answer
No, just change the record. It often takes a lot less time to propagate changes, sometimes in just minutes.