亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

根據TableA的結果,Delete TableB 中對應的項

根據TableA的結果,Delete TableB 中對應的項

哆啦的時光機 2018-12-07 13:19:26
關系Table 結構: IF OBJECT_ID('dbo.BT_LinksRolesRelation') IS NOT NULL DROP TABLE dbo.BT_LinksRolesRelation;GOCREATE TABLE BT_LinksRolesRelation(Role_Id INT REFERENCES BT_Role(Role_Id),Link_Id INT REFERENCES BT_Link(Link_Id),PRIMARY KEY(Role_Id, Link_Id)) 臨時中間表@tempRoleLinkTable:DECLARE @tempRoleLinkTable TABLE(Role_Id int,Link_Id int) 給中間表@tempRoleLinkTable插入值,條件是外界傳入值 Link_Id (3,14,25,36),Role_Id = 3,這些LInk_Id 取值個數 會變化,Role_Id取值會變化,但結構是不變的;如果外界傳入的值構成的那條記錄在關系Table中存在,就把 條記錄保存到臨時表@tempRoleLinkTable中:INSERT INTO @tempRoleLinkTable(Role_Id,Link_Id) SELECT Role_Id,Link_Id FROM BT_LinksRolesRelation AS BTWHERE BT.Role_Id = 3 AND BT.Link_Id IN (3,14,25,36) 如果關系表中Link_ID?有 3,14,25三條,? 則插入到臨時表中的數據為 3,14,25; ?36這條數據在關系表中不存在,那么就沒有被插入臨時表中去. 從關系表中刪除條目,這些要被刪除的條目是剛被先出來插入臨時表中的條目: DELETE FROM BT_LinksRolesRelation WHERE (Role_Id,Link_Id) in( ?SELECT? Role_Id,Link_Id ?FROM @tempRoleLinkTable )上面不能夠根據條件去刪除,錯誤出現在什么地方呢? 正確的刪除SQL語句應該怎么寫呢? 求大俠指點。。。
查看完整描述

3 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

換了一種方法來解決這個問題,以前想批次性處理請求! 現在用ajax一個一個的處理請求,所以傳入的Link_ID是一個了,后臺再用存儲過程來解決這個問題,唯一不好的就是訪問數據庫次數多了,花時間大了一點兒,而存儲過程!又稍微緩解了一下..
查看完整回答
反對 回復 2018-12-09
?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

語法 DELETE FROM 表名稱 WHERE 列名稱 = 值 ====================================== 比如說、、刪除某行 DELETE FROM Person WHERE LastName = 'Wilson' 或者 刪除所有行 DELETE FROM table_name 或者: DELETE * FROM table_name
查看完整回答
反對 回復 2018-12-09
  • 3 回答
  • 0 關注
  • 547 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號