How is that possible?
You are probably describing how in your Bitcoin-Qt client is a spend transaction that still shows 0/unconfirmed.
If so, then what most likely is the situation is that the transaction uses funds that you had received and spent. The stock Bitcoin-Qt/bitcoind client doesn't let you spend any funds until they have at least one confirmation. So what can happen is that payment you received showed a confirmation, you spent it, and then it reverted back to having no confirmations.
Looking at it now then, your client has an invalid transaction -- it wants to spend funds that you never really had and don't have today. You have a transaction that is no longer valid. Worse, if your transaction also attempted to spend any other funds which were valid, it will reserve those for this transaction which will never confirm.
The Bitcoin-Qt/bitcoind client doesn't handle these outgoing double spends nicely. In fact, unless you are technical they become quite a pain.
The easiest resolution for some is to import their wallet into another client that can handle this scenario better, or to export your private keys from your Bitcon-Qt, create a new, empty wallet and import the private keys so that you end up with exactly what you just had, less the offending transaction.
The easiest way for some is to import the wallet.dat to a new blockchain.info/wallet and spend the funds from there.
-
https://blockchain.info/wallet/import-walletOtherwise, the Bitcoin-Qt client has a Debug console in which you can export your private keys. The:
listaddressgroupings
command will give you all the addresses in your wallet, and from there you can do a:
dumpprivkey [BitcoinAddress]
on each address.
Then if you are creating a new wallet, then to import the keys:
importprivkey [PrivateKey]
For more info on importing:
-
http://en.bitcoin.it/wiki/How_to_import_private_keys