Learner-centered learning is now widely adopted in order to help the learners developing the ability of finding and solving problems by themselves. Teachers provide guidance during the learning process whenever needed. For courses which need practices, it is important to provide guidance or hints in time when learners have troubles or make mistakes in learning. Although e-learning can help giving guidance, the hints and the timing of giving hints are more important to the effectiveness of learning. This research applies metacognitive scaffolding theory to the instruction of SQL language – one of the important skills in IT domain. By analyzing the steps of SQL problem formulation, different levels of hints are designed for each perspective within each step of the SQL problem formulation. Hints can then be provided during the learning process by inspecting the results of practice so that the problem solving ability of the learner can be built gradually. Teaching experiments are also conducted to verify the effectiveness of the proposed method. The results of these experiments shows that the students receiving teaching method developed according to the scaffolding theory get better progress and satisfaction than the ones with traditional teaching method.