in mt.cornet waterfall
Mt. Coronet. DIAMOND, PEARL AND PLATINUM
catch a dratini in victory road and get it to lv 55-60
you can use the move thief or catch a seadra, horsea or dratini. they may hold a dragon scale
you can catch dratini in mt. cornet near the waterfall using surf and fishing rod. Once you catch it, and have high lv Pokemon for elite four, give dratini exp share. Soon, at lv 30 it will become dragonair and at lv 50 or 55 it will become dragonite. Hope i helped!
mt. coronet
You can't. You have to catch a dratini and involve it. You can find dratini at Brock's place and the rooms
Trade dratini from firered or leafgreen to ruby.
You can catch them by the Waterfall in Mt. Coronet using a Super Rod (after obtaining the National Dex and by Surfing in Sendoff Spring and good rod in Victory Road (optional) You can migrate from FR/LG/E if you have a Dratini in FR/LG or Emerald.
level 17 or 18
use thief on a wild horsea or catch it. it's really rare though.
You don't have to catch one to obtain a Dratini, but a little while after you earned the rising badge and go to the Dragon's Den, you can get a Dratini if you leave a empty slot in your party.
Unfortunately u cannot catch a dratini in sapphire version.. The only way to get a dratini is by trading it from any other version