我是sql的初學者。 我想從我的表中刪除幾行(一對一)。我認爲最好的方法是使用數組。 我想傳遞Id的行(類型爲int)來存儲數組的過程。我搜索並找到幾種方法。但是還沒有找到我的魅力。 我感謝任何指導我的人。 :)如何將數組傳遞給sql?
回答
這是我發現有用的鏈接。它解決了我的問題。 我希望它對你也有幫助:) http://www.codeproject.com/Questions/631284/How-to-pass-an-array-to-SQL-SERVER-stored-pro
這會幫助你。 :)按照下面的步驟,
- 打開查詢設計
複製,因爲它是將以下代碼粘貼,它會創建其轉換成字符串函數來INT
CREATE FUNCTION dbo.SplitInts ( @list VARCHAR(MAX), @Delimiter VARCHAR(255) ) RETURNS TABLE AS RETURN(SELECT項目= CONVERT(INT,檔案)FROM (選擇信息= xivalue('(./文本(SELECT)[XML] = CONVERT(XML,'' + REPLACE(@List,@Delimiter,'')+'')(「SELECT [XML] = CONVERT(')'[1]','varchar(max)') .query('。') )作爲CROSS APPLY [XML] .nodes('i')AS x(i))AS y WHERE Item IS NOT NULL ); GO
創建以下存儲過程
CREATE PROCEDURE dbo.sp_DeleteMultipleId @List VARCHAR(MAX) AS BEGIN SET NOCOUNT ON; DELETE FROM TableName WHERE Id IN(SELECT Id = Item FROM dbo.SplitInts(@List, ',')); END GO
執行此SP使用
exec sp_DeleteId '1,2,3,12'
這是標識的一串要刪除,您轉換您的陣列到字符串在C#並將其作爲存儲過程參數傳遞
int [] in tarray = {1,2,3,4,5};
string [] result = intarray.Select(x => x.ToString())。ToArray();
SqlCommand command = new SqlCommand();
command.Connection = connection;
command.CommandText = "sp_DeleteMultipleId";
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@Id",SqlDbType.VARCHAR).Value=result ;
這將刪除多行,所有最好的
在你的解決方案如何傳遞數組來存儲procedure.my id是int類型。我之前看到過這個鏈接。但我還有問題。 –
你想從Code Behind傳遞數組到存儲過程嗎? –
沒錯。如何將這些傳遞給SP? –
您可以使用XML數據類型,通過int數組列表。 將您的ID列表綁定到XML對象中。將其通過傳遞給SP。並且在SP中,從XML參數獲取節點。 你可以參考下面的鏈接。
如果你的ID的數組從1開始和結束以10可以使用下面的代碼在存儲過程
如果你的ID的數組從1開始和結束以10可以使用下面的代碼店內程序
AS
BEGIN
DECLARE @Count NUMERIC(18,0)
SET @Count = 1
WHILE(@Count <= 10)
BEGIN
DELETE FROM TableName WHERE [email protected]
SET @[email protected]+1
END
END
END
不,任何時候ID都是不同的值! –
- 1. Sql Server - 將數組傳遞給過程
- 2. 如何將數組傳遞給AppDelegate.m?
- 3. 如何將Go數組傳遞給C?
- 4. 如何將數組傳遞給Sinatra?
- 5. 如何將數組傳遞給方法?
- 6. 如何將數組傳遞給方法?
- 7. 如何將package.json數組傳遞給grunt.js
- 8. 如何將數組傳遞給json
- 9. 如何將PHP數組傳遞給jQuery?
- 10. 如何將數組傳遞給JqCloud?
- 11. 如何將數組傳遞給FLUIDTEMPLATE?
- 12. 如何將參數傳遞給組件?
- 13. 如何將數組傳遞給jQuery $ .ajax?
- 14. JAVA-如何將數組傳遞給@NamedNativeQuery
- 15. 如何將數組傳遞給MongoRepository @Query?
- 16. 如何將值傳遞給JavaScript數組?
- 17. 如何將sql查詢數組傳遞給函數
- 18. 如何將數組傳遞給SQL語句並將其提交給數據庫?
- 19. 將數組傳遞給file()?
- 20. 將數組傳遞給childNode
- 21. 將數組傳遞給Cuda
- 22. 將數組傳遞給ajax
- 23. 如何將pl/sql的輸出關聯數組傳遞給java?
- 24. 如何將數組傳遞給SQL存儲過程
- 25. 如何在JavaScript中將數組數組傳遞給函數?
- 26. 如何將參數傳遞給傳遞給mapPartitions的函數?
- 27. 如何將狀態傳遞給組件?
- 28. 如何使用jsp將java數組傳遞給javaScript數組?
- 29. 如何將數組數組傳遞給Oracle存儲過程?
- 30. 如何將Java數組內容傳遞給JavaScript數組?
你正在使用哪些DBMS? Postgres的?甲骨文? –