引用 | 編輯
terry8899
2005-09-23 16:17 |
樓主
▼ |
||
x0
<%set cn=server.createobject("adodb.connection") cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath ("XX.mdb") set rs=server.CreateObject("ADODB.Recordset") SQL = "UPDATE action_Type SET TYPE_NM ='" .. 訪客只能看到部份內容,免費 加入會員 x0
|
引用 | 編輯
terry8899
2005-09-23 17:18 |
2樓
▲ ▼ |
下面是引用PeterPan於2005-09-23 16:57發表的 : SQL = "UPDATE action_Type SET TYPE_NM ='" & request("TYPE_NM") & "' , last_User ='" & request("last_User") & "' , last_DATE ='" & request("last_DATE") & "' ,INP_User ='" & session("user_id") & "' , INP_DATE ='" & date & "' WHERE type_id like '" & request("type_id") & "'" 上述在資料庫裡面只更新一筆資料 我要的是能夠一次更新數筆 x0 |
引用 | 編輯
terry8899
2005-09-23 19:08 |
4樓
▲ ▼ |
下面是引用PeterPan於2005-09-23 18:36發表的 : 不..不是的 因為上述的SQL語法只能針對資料庫做單一筆更新.. 我是指傳送出去後..能夠一次的將數筆資料更新 .. 因為安全的問題....不能將全部的程式POST上來..SORRY. x0 |
引用 | 編輯
terry8899
2005-09-23 20:07 |
6樓
▲ ▼ |
下面是引用PeterPan於2005-09-23 20:02發表的 : 抱歉!! 請教各問題...你對ASP熟悉嗎? x0 |
引用 | 編輯
terry8899
2005-09-23 21:11 |
8樓
▲ ▼ |
下面是引用PeterPan於2005-09-23 20:59發表的 : SQL = "UPDATE action_Type SET TYPE_NM ='" & request("TYPE_NM") & "' , last_User ='" & request("last_User") & "' , last_DATE ='" & request("last_DATE") & "' ,INP_User ='" & session("user_id") & "' , INP_DATE ='" & date & "' WHERE type_id like '" & request("type_id") & "'" 因為上述的語法只能夠在資料庫裡面更新一筆資料..... x0 |
引用 | 編輯
PeterPan
2005-09-23 21:33 |
9樓
▲ ▼ |
like似乎少了%?
例如:where id like '%animal%' 或:where id like 'the%' x0 |
引用 | 編輯
唐老鴨
2005-09-23 21:53 |
10樓
▲ ▼ |
我也覺得妳在request("type_id")的前後少了%的符號....
不然根據你的SQL語法.... 你的WHER判斷.... like變成跟等於是一樣意思了.... x0 |
引用 | 編輯
terry8899
2005-09-23 22:27 |
11樓
▲ ▼ |
<form action="save.asp" name="frm1" method="post">
<% for i =1 to 20%> <input type="text" name="type_id<%=i%>"><br> <%next %> <input type="submit" value="send"> </form> //** save.asp --> ...部分我省略掉了... .... <% set cn=server.createobject("adodb.connection") cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath ("XX.mdb") set rs=server.CreateObject("ADODB.Recordset") SQL = "UPDATE action_Type SET TYPE_NM ='" & request("TYPE_NM") & "' , last_User ='" & request("last_User") & "' , last_DATE ='" & request("last_DATE") & "' ,INP_User ='" & session("user_id") & "' , INP_DATE ='" & date & "' WHERE type_id like '" & request("type_id") & "'" rs.open SQL,cn,1,2 Response.write "<script>javascript:window.close();</script>" %> 上面這段只能夠一次更新一筆資料...如果我要能夠一次大量更新數筆資料的話要如何做.. x0 |
引用 | 編輯
terry8899
2005-09-24 01:23 |
13樓
▲ ▼ |
下面是引用ziele於2005-09-24 00:42發表的 : 判斷條件有多筆符合?? 能詳細說明嗎?? thanks you!! x0 |
引用 | 編輯
唐老鴨
2005-09-24 04:10 |
14樓
▲ ▼ |
ASP我不會...
但假設你要找到多筆資料 SQL的語法要這麼下.... 譬如... select * from 學生 where 名字 like '唐%' ('%'表零到任意多個字元,'_'表一個字元) 這樣只要姓"唐"的所有人都會符合條件..... 但你的只有where 名字 like '唐' 當然只有一個人或多個人(名字非主鍵時)的名字叫唐的人才符合.... "唐老鴨"就不會符合啦 .... x0 |
引用 | 編輯
terry8899
2005-09-26 13:43 |
16樓
▲ ▼ |
下面是引用PeterPan於2005-09-24 09:06發表的 : 謝謝你告訴我方法..感激!! 送上鮮花一朵. x0 |
引用 | 編輯
terry8899
2005-09-26 13:46 |
17樓
▲ ▼ |
下面是引用唐老鴨於2005-09-24 04:10發表的 : 不好意思問個問題... 為什麼你的 From:美國 | Posted:2005-09-24 04:10| 所在地是在美國?? x0 |
引用 | 編輯
codeboy
2005-09-26 20:04 |
18樓
▲ ▼ |
下面是引用terry8899於2005-09-26 13:46發表的 :因為唐老鴨大大在美國唸書阿~ x0 |
引用 | 編輯
terry8899
2005-09-26 23:44 |
19樓
▲ ▼ |
下面是引用codeboy於2005-09-26 20:04發表的 : 在美國念哪間學校呢.. 修電腦資訊方面的的嗎... x0 |
引用 | 編輯
唐老鴨
2005-09-27 08:04 |
20樓
▲ ▼ |
下面是引用terry8899於2005-09-26 23:44發表的 : 這....這是程式討論區吧 .... 我唸資訊的.... 現在小學二年級 ..... x0 |
引用 | 編輯
ziele
2005-09-27 17:14 |
21樓
▲ ▼ |
WHERE type_id like '" & request("type_id") & "'"
如果資料庫只有一筆資料符合條件式 ,那就只能一次更新一筆,反之就可以多筆同時更新 看看SQL 語法 http://www.1keydata.com/tw/sql/sqllike.html x0 |
引用 | 編輯
terry8899
2005-09-29 12:37 |
22樓
▲ ▼ |
下面是引用ziele於2005-09-27 17:14發表的 : 無法顯示網頁 目前查閱的網頁無法使用。 網站可能發生技術問題或者您需要調整瀏覽器設定。 -------------------------------------------------------------------------------- 請嘗試下列: 請按 [重新整理]按鈕,或者稍後再試一次。 如果在網址列輸入網址,請確定未拼錯任何資料。 要檢查您的連線設定,請按[工具]功能表,然後按[網際網路選項]。在[連線]標籤按[區域網路設定]。 設定應符合區域網路 (LAN) 系統管理員或網際網路服務提供者 (ISP) 提供的設定。 如果您的網路管理員已經啟用此功能, Microsoft Windows 將檢定並自動尋找網路連線設定。 要 Windows 尋找設定,請按 [偵測網路設定] 某些網站要求 128 位元連線安全性。按[說明]功能表中的[關於 Internet Explorer]來判定您安裝的安全性強度。 如果想連線到安全網站,請確定您的安全性設定可以支援。請按[工具]功能表,然後按[網際網路選項]。在 [進階] 標籤,捲動到 [安全性] 區段,然後檢查 SSL 2.0、SSL 3.0、TLS 1.0、PCT 1.0 的設定。 按一下 [上一頁] 按鈕會嘗試其他連結。 找不到伺服器或 DNS 錯誤 Internet Explorer x0 |
引用 | 編輯
zerobennett
2005-10-12 13:28 |
23樓
▲ ▼ |
先從資料庫搜尋需要更新紀錄集合然後用迴圈更新就好了
Vector Result = QueryResult("Select * form DB Where ID like %?%"); for(int i=0; i<Result.size(); i++) { 更新的動作 } 但是你必須先搜尋出你所要更新的紀錄 就是條件要很清楚 like %+AB+% 就是說 假設某欄位內的值=AABCDEF 那麼條件成立 意思就是說 只要該欄位內有出現AB則條件就成立 如果沒有加%就是等於的意思了 忘記跟你說 asp 我很久沒寫了 這是Java的寫法。(XD逃~) x1 |
引用 | 編輯
shawn0919
2005-10-13 23:35 |
24樓
▲ ▼ |
下面是引用terry8899於2005-09-23 22:27發表的 : 如果是依照上面的表單來看的話會送出20個type_id的欄位值是吧! 那同樣寫個迴圈去更新資料庫即可。 <% For i = 1 to 20 SQL = "UPDATE action_Type SET TYPE_NM ='" & request("TYPE_NM") & "' , last_User ='" & request("last_User") & "' , last_DATE ='" & request("last_DATE") & "' ,INP_User ='" & session("user_id") & "' , INP_DATE ='" & date & "' WHERE type_id LIKE '" & type_id的值 & "'" Set rs = cn.Execute(SQL) Next %> x1 |
引用 | 編輯
ddmg
2005-10-15 12:39 |
26樓
▲ |
當然是用廻圈囉
for next while wend 都嘛可以用 大量的話 那你可用載入文字檔或建一個資料庫或excel...來做為資料來源 例 先開一載入資料來源的地方... (得到rs.(資料來源欄位")) set conn = ServerObject("ADODB.connectoin") '要修改資料庫ADO連結 conn.open ......... '====重覆區 while not rs.eof 來源變數 = rs.("資料來源欄位") SQL = "update 資料表 set 修改欄位 = 來源變數 where 指定的資料列" conn.execute(SQL) wend '======重覆區 這樣就OK了..... x1 |