Just something to add actually: a possible pitfall (when using Method 1 at least). I have a table with a key that is a CHAR(18) and its data are something like this:
Could also be a BIGINT of course. When copied and pasted to Excel using tab-delimited output, because Excel can't handle such a large number, this gets changed to:
(Even though it's a CHAR data type, because Excel is using "General" formatting, it assumes it to be numeric.)
It's easy to miss this at first. The only way I've found to get around it so far is to use the Column Aligned option, then when doing "Data > Text to Columns", on the screen where you set up data types, you can change it from General to Text and the full number will be preserved.