PickerViewの最初に選択されている値を取得してデータベースに格納しようとしているのですが、データ登録後にデータベースを確認すると中身が空になってしまっています。
また、このViewControllerから他のViewControllerへ移動しようとすると、「fatal error: unexpectedly found nil while unwrapping an Optional value」というエラーがログに出力されてアプリが落ちてしまいます。
いまいちまだオプショナル型についても分かってないので、詰まってしまいました。
どうすればPickerViewの初期値を取得して正常に動かすことができるでしょうか?
どなたか分かる方がいれば教えていただきたいです。すみませんが、よろしくお願いします。

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var speechPicker: UIPickerView!
    @IBOutlet weak var textField: UITextField!

    var dataForSpeechPicker = ["A", "B", "C"]
    var registerWordStore = ""
    var registerSpeechStore = ""

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func viewDidAppear(animated: Bool) {
        speechPicker.selectRow(0, inComponent: 0, animated: true)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    // MARK:- picker

    func numberOfComponentsInPickerView(pickerview1: UIPickerView) -> Int {
        return 1
    }

    func pickerView(pickerview1: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return dataForSpeechPicker.count
    }

    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
        return dataForSpeechPicker[row]
    }

    func pickerView(pickerview1: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
        registerSpeechStore = dataForSpeechPicker[row]
    }

    // MARK:- textField

    func textFieldShouldReturn(textField: UITextField!) -> Bool{
        registerWordStore = textField.text

        textField.resignFirstResponder()
        return true
    }

    // MARK:- registerButton

    @IBAction func registerWord(sender: AnyObject) {
        //データベース登録処理
    }