Yahoo奇摩知識+ 將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+ 網站將會轉為唯讀模式。其他 Yahoo奇摩產品與服務或您的 Yahoo奇摩帳號都不會受影響。如需關於 Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 1 0 年前

(asp.net) update資料庫的問題!

各位懂asp.net的大大請問一下:

不好意思我是asp.ent的新手

我用vs2005做了一個頁面,

要將資料庫的資料顯示在textbox上

,在page_load的地方寫了資料庫的連線,

並將資料指定給textbox顯示,

例如textbox1.text = dr.item(0)

dr為sqlDatareader

資料都可以帶出來

現在要做的是update的動作,

拉了一個按鈕在裡面寫sql語法

前面程式省略..............................

省略..("update testdata set myname= ' " & textbox1.Text & " ' ", conn)

當我在textbox1打入新的資料後按update按鈕,所寫進去的資料

是page_load所帶入給textbox1的資料,不會把剛剛新輸入的資料

寫進去,只有在指定myname = 'peter'的時候才會把新資料

寫進去,請問問題是出在哪裡呢?

謝謝^^

2 個解答

評分
  • 匿名使用者
    1 0 年前
    最佳解答

    這問題就是發生在,網頁Load的發生順序你還不了解

    當網頁第一次載入的時候,會由DataReader將值抓出來置入TextBox裡這OK

    但在你把按鈕按下時,同時也會發生網頁載入的動作,所以說...

    分步驟解析~

    1. 使用者輸入TextBox的值

    2. 按下按鈕,網頁再次載入又將資料庫的值抓出來置入TextBox裡

    3. Update TextBox的值...(根本是原本的值)

    一直在做重複的動作而已...

    所以需要IsPostBack來幫忙,

    那東西就是判斷網頁是否為第一次載入,這個研究一下

    你的問題大概就解決了

    參考資料: 努力學習中的我
  • 1 0 年前

    在 Page_Load 裡面你要加入一個判斷式來檢查

    If IsPostBack Then

    這邊放你要update資料庫的程式碼

    End If

    -----------

    IsPostBack 是Page類別的屬性, 來表示是否為送出表單的狀態

還有問題?馬上發問,尋求解答。