用dataAdapter.update更新DataGridView中的数据,代码总是抛出异常说 dataAdapter 是 null,该怎么修改?

用dataAdapter.update更新DataGridView中的数据,代码总是抛出异常System.NullReferenceException:“未将对象引用设置到对象的实例。” dataAdapter 是 null,该怎么修改?

这里是详细代码

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace 项目二

{
public partial class Form1 : Form
{

    SqlDataAdapter dataAdapter;
    DataSet dataSet;
    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        string connString = "Data Source = (local);Initial Catalog = Mybookshop;User ID = sa;pwd = 123456";
        SqlConnection con = new SqlConnection(connString);
        string sql = "SELECT * FROM book1";
        SqlDataAdapter dataAdapter = new SqlDataAdapter(sql, con);
        DataSet dataSet;
        dataSet = new DataSet();
        dataAdapter.Fill(dataSet, "Mydata");
        dataGridView1.DataSource = dataSet.Tables[0];
    }

    private void button2_Click(object sender, EventArgs e)
    {
        SqlCommandBuilder builder = new SqlCommandBuilder(dataAdapter);
        dataAdapter.Update(dataSet, "Mydata");


    }
}

}

图片说明

输入数据点击更新后错误显示为
图片说明

把button1里面的SqlDataAdapter dataAdapter写在函数外面。