using SqlSugar; using System; using System.Collections.Generic; namespace OrmTest { internal class _a2_Sql { /// /// 初始化 SQL 操作的示例方法。 /// Initializes example methods for SQL operations. /// internal static void Init() { // 获取新的数据库连接对象 // Get a new database connection object var db = DbHelper.GetNewDb(); // CodeFirst 初始化 ClassA 表 // CodeFirst initializes the ClassA table db.CodeFirst.InitTables(); db.Insertable(new ClassA() { Name = Guid.NewGuid().ToString("N") }).ExecuteReturnSnowflakeId(); // 1. 无参数查询 DataTable // 1. Query DataTable without parameters var dt1 = db.Ado.GetDataTable("SELECT * FROM Table_a2"); // 2. 带参数查询 DataTable(简化用法) // 2. Query DataTable with parameters (simplified usage) var dt2 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@id AND name LIKE @name", new { id = 1, name = "%Jack%" }); // 3. 带参数查询 DataTable(复杂用法) // 3. Query DataTable with parameters (complex usage) var parameters = new List { new SugarParameter("@id", 1), new SugarParameter("@name", "%Jack%",System.Data.DbType.AnsiString)//DbType }; var dt3 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@id AND name LIKE @name", parameters); // 4. 带参数查询 DataTable(结合用法) // 4. Query DataTable with parameters (combined usage) var dynamicParameters = db.Ado.GetParameters(new { p = 1, p2 = "A" }); var dt4 = db.Ado.GetDataTable("SELECT * FROM Table_a2 WHERE id=@p AND name=@p2", dynamicParameters); // 原生 SQL 使用实体进行查询 // Native SQL query using an entity List entities = db.Ado.SqlQuery("SELECT * FROM Table_a2"); List entities2 = db.Ado.SqlQuery("SELECT * FROM Table_a2 WHERE ID>@ID",new { ID=1}); // 原生 SQL 使用匿名对象进行查询 // Native SQL query using an anonymous object List anonymousObjects = db.Ado.SqlQuery("SELECT * FROM Table_a2"); // 执行 SQL 命令(插入、更新、删除操作) // Execute SQL commands (insert, update, delete operations) db.Ado.ExecuteCommand("INSERT INTO Table_a2 (id,name) VALUES ("+SnowFlakeSingle.Instance.NextId()+", 'New Record')"); } /// /// 示例实体类。 /// Example entity class. /// [SugarTable("Table_a2")] public class ClassA { [SugarColumn(IsPrimaryKey = true)] public long Id { get; set; } public string Name { get; set; } } } }