No, I think you do not understand Grover's algorithm or basic QC at all from your response. This is elementary undergrad-level QC stuff so I'm not going to waste time arguing. The lecture notes linked [1] will explain in more detail if you want. I'll clarify once more in this thread though for anyone else who wants to understand.
Let us suppose we are given a black box that takes as input a number N and outputs either true or false; we want to know if the box ever outputs true.
Clearly, classically we must test the box on every input, so we need to evaluate the box N times.
Grover's algorithm says if we have such a box,
and may make quantum queries to the box, then we can actually make only sqrt(N) queries. Note that being able to query a box in superposition is very powerful. For example, you can actually "evaluate the box on all inputs" in only a single query, by feeding as input a uniform superposition over all input states. So that part is actually trivial. The tricky part, and the cleverness of Grover's algorithm, is aggregating all those answers into a single answer. See [1] for some lecture notes with the details. Finally, while I said "being able to query a box in superposition is very powerful", it is implied by the existence of QC. The axioms of QM mean that any quantum circuit that can be queried input-by-input, must also be able to be queried in superposition in the same amount of time (because QM is linear, and so a quantum circuit must transform any linear combination of input states to the same linear combination of the corresponding output states)
Now to relate this to the wiki page, where it says "let f be the function which maps database entries to 0 or 1". That f is the black-box we are trying to test. Thus, our testing procedure takes as input a function f, and answers if there is an x s.t. f(x) = 1.
Now to get to the root of the confusion: how do we take as input a function "f"? There are two ways: we could take it in as a list of input, output pairs. Or we could take it in as a description of a circuit. Note the latter may be exponentially smaller than the former, in that small circuits can compute functions with a massive input space. Further, taking the input as a list of input-output pairs makes absolutely no sense, because then we need to spend N time to even READ the input (the "database").
So thinking about Grover's algorithm as a "database search" is actually pretty retarded, because if you used it that way, you would already need to spend N time just to build the database! Clearly, you can only improve over time N if the database actually has a description that is smaller than N bits.
Now, to apply this to bitcoin mining: Fix a block header, and let f(x) = 1 if using nonce x makes the block header hash below the target, 0 otherwise. Mining is simply taking f() and searching for x s.t. f(x) = 1. There are 2^32 possible xs, so classical mining requires testing 2^32 nonces.
A quantum miner would feed f into grover's algorithm, and query f in superposition on only 2^16 inputs before getting the answer.
For larger difficulties, a quantum miner can get a better improvement by making f() a bit more complicated, so that x includes the "extra nonce" in addition to the nonce. That way f() has N = 2^32 * difficulty inputs instead of just N = 2^32. The point is, something that would require a classical miner N tests, will require a quantum miner only sqrt(N) tests. Each "test" requires evaluating f(), which computes the hashes and checks against the target.
[1]
http://www.cs.washington.edu/education/courses/cse599d/06wi/lecturenotes12.pdf