ef高级使用
使用ExecuteSqlCommand执行增删改
添加
string sql = $"insert into girl1907 values('{System.Guid.NewGuid().ToString("N")}','{DateTime.Now.ToString()}','{"李白"}','{"青莲剑仙"}')";
int n = db.Database.ExecuteSqlCommand(sql);
Console.WriteLine(n>0?"成功":"失败");
插入语句问题-变量问题
1,int类型不需要‘’引用
2,工作中,都是字符串uuid类型,都需要‘’
3,时间类型,字符串-需要加‘’
4,money-float-decimal
decimal来替代
并且不需要‘’
5,text类型代表无长度的字符串类型string
6,无论是否有默认值,都写上参数,除非只写入某项
修改
string sql = $"update girl1907 set introduce = '{"天魔缭乱"}' where nickName = '{"吕布"}'";
int n = db.Database.ExecuteSqlCommand(sql);
Console.WriteLine(n>0?"成功":"失败");
删除
string sql = $"delete from girl1907 where nickName = '{"吕布"}'";
int n = db.Database.ExecuteSqlCommand(sql);
Console.WriteLine(n>0?"成功":"失败");
聚合查询
string sql = $"select count(*) from girl1907";
DbRawSqlQuery<int> dbr = db.Database.SqlQuery<int>(sql);
foreach (var item in dbr)
{
Console.WriteLine(item);
}
链表查询
创建类
public class Allinfo:girl1907
{
public string bid { get; set; }
public System.DateTime forinloveTime { get; set; }
public string gid { get; set; }
public string bName { get; set; }
public string Likes { get; set; }
}
string sql = $"SELECT * FROM girl1907 g INNER JOIN ruj907bf r ON g.id = r.gid";
DbRawSqlQuery<Allinfo> dbr = db.Database.SqlQuery<Allinfo>(sql);
foreach (var item in dbr)
{
Console.WriteLine(item.bid+" "+item.bName +" "+item.Likes +" "+item.nickName +" "+item.introduce);
}
创建三层架构
显示数据
<form id="form1" runat="server">
<div>
<asp:DataGrid runat="server" ID="datagrid1"></asp:DataGrid>
</div>
</form>
if (!IsPostBack)
{
datagrid1.DataSource = BLL.rj1907BLL.SelectAll();
datagrid1.DataBind();
}