SqlSugar-執行Sql語句查詢實例

使用SqlSugar執行sql語句

1.簡單查詢

SqlSugarClient db = SugarContext.GetInstance();
//執行sql語句,處理
//1.執行sql,轉成list
List<teacher> list1 = db.SqlQuery<teacher>("select * from teacher where tsex=@tsex", new { tsex = "女" });
Console.WriteLine(list1.ToJsonString());
//2.轉成dynamic
dynamic list2 = db.SqlQueryDynamic("select * from UserInfo");
Console.WriteLine(list2.Length);
//3.轉成json數據
string list3 = db.SqlQueryJson("select * from UserInfo");
Console.WriteLine(list3);
//4.返回int
int count = db.SqlQuery<int>("select count(*) from UserInfo").FirstOrDefault();
Console.WriteLine(count);

//5.返回鍵值對類型
Dictionary<string, string> list4 = db.SqlQuery<KeyValuePair<string, string>>("select UserID,Name from UserInfo")
    .ToDictionary(q => q.Key, q => q.Value);
Console.WriteLine(list4.ToJsonString());

//6.返回List<string[]> 集合
List<string[]> list5 = db.SqlQuery<string[]>("select  * from teacher where tsex=@tsex", new { tsex = "女" });
Console.WriteLine(list5.ToJsonString());

2.彙總查詢

SqlSugarClient db = SugarContext.GetInstance();
//更方便的獲取第一行第一列
string result1 = db.GetString(" select  name from UserInfo where UserID=@UserID", new { UserID = 1 });
Console.WriteLine(result1);
int count = db.GetInt("select count(*) from UserInfo");
Console.WriteLine(count);
double result2 = db.GetDouble("select avg(degree) from score where cno=@cno ", new System.Data.SqlClient.SqlParameter("@cno", "3-105"));
Console.WriteLine(result2);

decimal result3 = db.GetDecimal(" select avg(degree) from score");
Console.WriteLine(result3);

3.執行視圖、存儲過程

SqlSugarClient db = SugarContext.GetInstance();
//執行視圖查詢
List<student> list1 = db.SqlQuery<student>("select * from V_student");
Console.WriteLine(list1.ToJsonString());
//執行存儲過程處理
var pars = SqlSugarTool.GetParameters(new { pageStart = 1, pageEnd = 5, recordCount = 0 });
//禁止清空參數
db.IsClearParameters = false;
pars[2].Direction = System.Data.ParameterDirection.Output;
List<student> list2 = db.SqlQuery<student>("exec proc_PageStudent @pageStart,@pageEnd,@recordCount output", pars);
db.IsClearParameters = true;//啓用自動清空參數
var recordCount = pars[2].Value;
Console.WriteLine(list2.ToJsonString());
Console.WriteLine(recordCount);

 

更多參考:

SqlSugar-事務操作

SqlSugar常用增刪改操作

SqlSugar常用查詢實例-拉姆達表達式

SqlSugar框架T4模板的使用

.Net開源SqlServer ORM框架SqlSugar整理

發佈了7 篇原創文章 · 獲贊 20 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章