天天看點

C#WPF中的兩表多資料連接配接

如何在資料庫中,通過兩表連接配接多條資料?

該方法适用于WPF項目的資料庫存儲過程編寫,而且是作用于查詢方法。

C#WPF中的兩表多資料連接配接
C#WPF中的兩表多資料連接配接
C#WPF中的兩表多資料連接配接
SELECT	ROW_NUMBER () over(order by  B_ModuleFunction.ModuleFunctionID) as number,
		B_ModuleFunction.ModuleFunctionID, 
		RTRIM(B_Module.ModuleName) AS ModuleName, 
		RTRIM(B_Module.ModuleCode) AS ModuleCode, 
		B_Module.f_id,
		RTRIM(B_ModuleFunction.Detailed_attribute_gatherID) AS Detailed_attribute_gatherID,
		'False' AS SelectID, 
		'False' AS InsertID, 
		'False' AS UpdateID, 
		'False' AS DeleteID
FROM      B_Module INNER JOIN
               B_ModuleFunction ON B_Module.ModuleID = B_ModuleFunction.ModuleID
			   --在Sql中将 varchar 值 '1,2,3,4,5,6' 轉換成資料類型 int
			   --charindex(比對内容,檢測字元串),比對不到資料傳回0
WHERE	charindex(','+rtrim(B_ModuleFunction.ModuleFunctionID)+',',','[email protected]+',')>0  
           

這裡用到的兩張資料表分别是B_Powers和B_ModuleFunction,這裡的B_Power.ModuleFunctionID連接配接了B_Powers表中的多條id,如果是普通的連表,是通過id連接配接且隻能連接配接一條id,而這裡連接配接了多條,B_Powers表中的ModuleFunctionID其實在char類型,但通過charindex方法可以實作不同類型的資料查找。

總結:首先是使用這種查詢方法需要注意的地方,存放多條id的ModuleFunctionID中結尾要用“,”隔開,不然執行操作的時候會出錯。最後要注意int類型的資料不能和char類型資料連接配接,以上條件滿足後就可通過charindex方法查詢資料。

PS:以上均為個人了解,可能存在錯誤或遺漏,歡迎各位指正。