討論區快速選單
知識庫快速選單
討論區最近新進100則主題 CRM雲端平台必備Salesforce認證
[ 回上頁 ] [ 討論區發言規則 ]
請問:如何更新二資料表欄位的值?
更改我的閱讀文章字型大小
作者 : toyboy(toyboy) 貼文超過200則人氣指數超過30000點
[ 貼文 438 | 人氣 37407 | 評價 1120 | 評價/貼文 2.56 | 送出評價 71 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/5/24 下午 08:49:19
各位大大:
     請問:如何更新二資料表欄位的值?
     如:table a的a1欄位要更新成'b',table b的b1欄位要更新成'a'
     在access是寫成以下這樣
     update a,b set a.a1='b',b.b1='a'
     但在SQL Language這樣會顯示語法錯誤的訊息
     不知在SQL Language該如何達到上述功能?

     謝謝各位大大的教導!!謝謝!!
作者 : aaaaaaaa(路人) SQL Language優秀好手貼文超過200則人氣指數超過10000點
[ 貼文 271 | 人氣 11161 | 評價 1760 | 評價/貼文 6.49 | 送出評價 6 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人toyboy註記此篇回應為很有道理 2005/5/25 上午 08:39:34
>update a,b set a.a1='b',b.b1='a'
分開不就ok?
update a
set a1 = 'b'
update b
set b1 = 'a'

<<ms-sql的update語法>>
UPDATE
     {
     table_name WITH ( < table_hint_limited > [ ...n ] )
     | view_name
     | rowset_function_limited
     }
     SET
     { column_name = { expression | DEFAULT | NULL }
     | @variable = expression
     | @variable = column = expression } [ ,...n ]

    { { [ FROM { < table_source > } [ ,...n ] ]

     [ WHERE
     < search_condition > ] }
     |
     [ WHERE CURRENT OF
     { { [ GLOBAL ] cursor_name } | cursor_variable_name }
     ] }
     [ OPTION ( < query_hint > [ ,...n ] ) ]

作者 : toyboy(toyboy) 貼文超過200則人氣指數超過30000點
[ 貼文 438 | 人氣 37407 | 評價 1120 | 評價/貼文 2.56 | 送出評價 71 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/5/25 下午 02:02:45
謝謝路人大大您的回應!!
小弟也知道可以分開成二個來寫,只想了解是否可以寫成一支,若sql支數愈少,
也較利維護

謝謝大大的教導!!謝謝!!^_^
作者 : aaaaaaaa(路人) SQL Language優秀好手貼文超過200則人氣指數超過10000點
[ 貼文 271 | 人氣 11161 | 評價 1760 | 評價/貼文 6.49 | 送出評價 6 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人toyboy註記此篇回應為很有道理 2005/5/25 下午 02:50:04
這種語法是常態性的語法嗎?
不過分二段UPDATE也是一支程式吧!
不然嚴謹一點,加上BEGIN TRANSACTION包起來
BEGIN TRAN T1
UPDATE a
SET a1 = 'b'
UPDATE b
SET b1 = 'a'
COMMIT TRAN T1

<<MS-SQL>>
UPDATE語法後面只能接
table_name
view_name
rowset_function_limited
作者 : toyboy(toyboy) 貼文超過200則人氣指數超過30000點
[ 貼文 438 | 人氣 37407 | 評價 1120 | 評價/貼文 2.56 | 送出評價 71 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2005/5/25 下午 05:51:33
路人大大:
     實在是無法用大大所提供的語法來達成,因為把它寫在ado.net的oledbcommand
     的commandtext,在執行時還是會錯
     所以已用其它的方式避掉此情形發生,待有空後,再來研究此語法該如何達成
     謝謝大大的教導!!謝謝!!^_^
作者 : mingch08(MikeLee)
[ 貼文 11 | 人氣 316 | 評價 0 | 評價/貼文 0 | 送出評價 1 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/7/22 下午 03:09:27
oledb不能接SQL Server吧!????當然會錯..
作者 : mingch08(MikeLee)
[ 貼文 11 | 人氣 316 | 評價 0 | 評價/貼文 0 | 送出評價 1 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/7/22 下午 03:09:51
oledb不能接SQL Server吧!????當然會錯..
作者 : alberta(電腦狂)
[ 貼文 57 | 人氣 3359 | 評價 150 | 評價/貼文 2.63 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/8/15 下午 05:59:43
ADO.NET的OLEDB可以連接SQL SERVER 7.0以前的版本。
作者 : alberta(電腦狂)
[ 貼文 57 | 人氣 3359 | 評價 150 | 評價/貼文 2.63 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/8/15 下午 06:02:31
你可以將兩支Update語法中間用分號隔開, 再塞到OleDbCommand(or SqlCommand?)物件的CommnadText屬性中, 可以執行的。
 板主 : AXNET
 > SQL Language - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - SQL Language - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
SQL Language
1 ㄉ一ˊㄎㄜˋ 1330 
2 路人 1270 
3 坤哥 700 
4 吳馨琳 460 
5 凡人 440 
6 老骨頭 390 
7 pome5 380 
8 BK. 330 
9 Tony 310 
10 HKLN.net 250 
SQL Language
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.0625