.Net+MySQL組合開發(二) 資料訪問篇

來源:互聯網
上載者:User
一、建立資料庫、表、添加資料
這裡我們使用圖形化操作的SQL Manager 2005 Lite for MySQL來建立資料,它的操作介面非常類似OFFICE軟體,使用方便、很容量上手、下面開始建立資料庫及表
單擊"Creat New DataBase":建立DB

輸入密碼:


選擇用戶端編碼為gb2312,防亂碼;也可以在建立好的資料庫右鍵選擇"DataBase Registration Info"更改編碼:

建立表:輸入表名:

建立欄位


點擊加號,手動添加資料,點出對號,提交資料:

選擇DDL選項,直接看到剛才操作的指令碼;也可以不用上面的方式操作,直接寫sql指令碼來建立資料:

二、ADO.NET資料操作
推薦使用MySQL Connector Net 5.0.3
web.config添加連接字串:<add name="MySqlServer" connectionString="Data Source=127.0.0.1;User ID=root;Password=123;DataBase=BOOK;Charset=gb2312"/>

為了方便,把對資料的訪問封裝到一個類中: 1// 執行sql 
 2public int ExecuteSql(string strSql, MySqlParameter [] myPar)
 3    {
 4        try
 5        {
 6            myConnection.Open();
 7            MySqlCommand cmd = new MySqlCommand(strSql, myConnection);
 8            if (myPar != null)
 9            {
10                foreach (MySqlParameter spar in myPar)
11                {
12                    cmd.Parameters.Add(spar);
13                }
14            }
15            int result = cmd.ExecuteNonQuery();
16            myConnection.Close();
17            return result;
18        }
19        catch
20        {
21            return 0;
22        }
23    }

擷取資料: 1 public DataSet GetDataSet(string strSql)
 2    {
 3        try
 4        {
 5            MySqlDataAdapter da = new MySqlDataAdapter(strSql, myConnection);
 6            DataSet ds = new DataSet();
 7            da.Fill(ds);
 8            return ds;
 9        }
10        catch
11        {
12            return null;
13        }
14    }

在頁面中我們用一個gridview實現資料的讀取、寫入、編輯、刪除等操作:

資料繫結:1 //databind
2    protected void BindGrid()
3    {
4        DataSet ds = obj.GetDataSet("SELECT * FROM book ORDER BY bid");
5        GridView1.DataSource = ds;
6        GridView1.DataBind();
7        ds.Dispose();
8    }

添加資料: 1 string strSQL = "INSERT INTO book (bname,author,publish) VALUES (?bname,?author,?publish)";
 2            MySqlParameter[] mysp =
 3            {
 4                new MySqlParameter ("?bname",MySqlDbType.VarChar ),
 5                new MySqlParameter ("?author",MySqlDbType.VarChar),
 6                new MySqlParameter ("?publish",MySqlDbType.VarChar)
 7            };
 8            mysp[0].Value = txtName.Text.Trim();
 9            mysp[1].Value = txtAuthor.Text.Trim();
10            mysp[2].Value = txtPublish.Text.Trim();
11            if (obj.ExecuteSql(strSQL, mysp) == 1)
12            {
13                Response.Write("<script>alert('提交成功');</script>");
14                BindGrid();
15                txtName.Text = txtAuthor.Text = txtPublish.Text = "";
16            }

注意參數符號是"?"而不是"@",這一點不同於sql server
其它編輯等作業碼等請下載檔案
下載詳細完整的代碼檔案/Files/chy710/MySQL_ADONET.rar
下篇預告:mysql開發中的亂碼問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.