sqlserver 存儲過程動態參數調用實現代碼建站知識
導讀:1建站知識sqlserver 存儲過程動態參數調用實現代碼,需要的朋友可以參考下。seo網站優化培訓百度seo網站優化。
只是做筆記,沒什么!!
復制代碼 代碼如下:
--創建測試表 CREATE TABLE [dbo].[Student]( [ID] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY, [Name] [nvarchar](20) NOT NULL DEFAULT (''), [Age] [int] NOT NULL DEFAULT (0), [Sex] [bit] NOT NULL DEFAULT (0), [Address] [nvarchar](200) NOT NULL DEFAULT ('') ) --比如是一個查詢存儲過程 Create PROC GetStudentByType @type int =0, -- 1根據id查詢, 2根據性別查詢 @args XML -- 參數都寫到這里吧 AS BEGIN DECLARE @id INT,@sex BIT SET @id=@args.value('(args/id)[1]','int') --參數都可以寫在這里,如果沒有傳過來,大不了是null值了,反正也用不到,沒關系的 SET @sex =@args.value('(args/sex)[1]','bit') IF(@type=1) BEGIN SELECT * FROM dbo.Student W網站建設HERE ID=@id END IF(@type=2) BEGIN SELECT * FROM dbo.Student WHERE Sex=@sex END END
參數寫xml里感覺比用字符串要好很多,這樣調用時參數就不好組織了,所以這里要有個幫助類XmlArgs復制代碼 代碼如下:
public class XmlArgs { private string _strArgs = string.Empty; private bool _isCreate = false; private Di如何seo優化推廣網站ctionary<string, string> _args; public string Args { get { if (!_isCreate) { _strArgs = _CreateArgs(); _isCreate = true; } return _strArgs; } } public XmlArgs() { _args = new Dictionary<string, string>(); } public void Add(string key, object value) { _args.Add(key, value.ToString()); _isCreate = false; } public void Remove(string key) { _args.Remove(key); _isCreate = false; } public void Clear() { _args.Clear(); _isCreate = false; } private string _CreateArgs() { if (_args.Count == 0) { return string.Empty; } StringBuilder sb = new StringBuilder(); foreach (string key in _args.Keys) { sb.AppendFormat("<{0}>{1}</{0}>", key, _args[key]); } return sb.ToString(); } }
調用:復制代碼 代碼如下:
private void BindData() { XmlArgs args = new XmlArgs(); args.Add("id", 1); System.Data.DataTable dt = GetStudentByType(1, args); GridView1.DataShow(dt); } private System.Data.DataTable GetStudentByType(int type, XmlArgs args) { SqlHelper helper = new SqlHelper(); helper.Params.Add("typ網站建設哪家好e", type); helper.Params.Add("args", args.Args); System.Data.DataTable dt = helper.RunDataTable("GetStudentByType"); return dt; }
相關seo網站優化培訓百度seo網站優化。聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-21 ,文章sqlserver 存儲過程動態參數調用實現代碼建站知識主要講述存儲過程,參數,sqlserver 存儲過程動態參數調用實網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_3777.html