2012年3月9日 星期五

第一次用GridView新增資料就上手 Part2

之前用過Gridview + DetailsView 新增資料
http://anandydy529.blogspot.com/2011/12/gridview.html

最近又學到Gridview + Textbox
第二種的優點是表單輸入比較彈性,也可以多行輸入
就讓我們開始吧

(以下點圖放大)

假設我要弄通訊錄,先在Access上做一個空白資料表
然後隨便弄個AA當主索引,主索引要設為自動編號


從工具箱拉出DropDownlist、ListBox、TextBox
Gridview和Sql來源設定請參考前一篇


要增加DropDownlist、ListBox的設定如下圖


先點一下SqlDataSource,再到屬性那邊找到InsertQuery,點那個口


指定Sql和輸入的連結,主索引也可以在這邊刪除


設定完後會看到每個資料都有對應的輸入項


從工具箱拉出一個LinkButton來當新增鈕


改顯示名稱是在右邊屬性的Text
然後對這個LinkButton點滑鼠左鍵兩下
要寫新增資料的程式



在LinkButton的程式中加入這段

        '新增資料
        SqlDataSource1.Insert()
        '新增資料後清空
        TextBox1.Text = ""
        TextBox2.Text = ""
        TextBox3.Text = ""
        TextBox4.Text = ""
為什麼要設定新增資料後清空?
因為新增完後原本的Textbox還會有資料
這樣要一直新增資料會很麻煩


這段加上去基本的就完成囉
用瀏覽器檢視測試看看

蝦米!"INSERT INTO 陳述式的語法錯誤。 "
原來是資料庫中出現保留碼
微軟有列出保留碼清單
http://support.microsoft.com/kb/286335/en-us


回到Access把保留碼改成別的
我是改成中文啦,這樣就沒有保留碼的問題
然後上面的步驟再做一次確定連結的設定有沒有跳掉



蝦米!"索引或主索引鍵不可包含 Null 值。  "
重新設定Sql後GridView會重製,所以要把主索引砍乾淨
怎麼砍上一篇最後有說明了


如果砍完還是出現"索引或主索引鍵不可包含 Null 值。  "
那對你的Access檔點右鍵→內容


新增一個Everyone的權限


如果你問我為什麼你的內容沒有安全性這東西
請看下圖


記得給Everyone開啟權限


如果還是有問題,還可以看看主索引是不是自動編號
弄這個小問題真多...


這樣就完成啦
沒想到居然那麼麻煩
下次再介紹如何多行輸入




第一次用GridView新增資料就上手
http://anandydy529.blogspot.com/2011/12/gridview.html

第一次用GridView新增資料就上手 Part2
http://anandydy529.blogspot.com/2012/03/gridview-part2.html

第一次做TextBox多行輸入就上手
http://anandydy529.blogspot.tw/2012/03/textbox.html

沒有留言:

張貼留言