EF:Entity Framewrok的缩写
EF框架使用注意:
1)、使用EF时表中必须有主键,否则EF不知道该如何更新
2)、如果表中某个字段为自动增长,则在程序中不能为其赋值,允许为NUll的字段也可以不赋值
在数据库MyTest数据库建立T_User表,包含UserName、Name字段;新建ADO.NET实体数据模型
一、EF操作数据库
1、新增语句
#region
MyTestEntities mytest = new MyTestEntities();
T_User user1= new T_User ();
user1.UserName="lyc";
user1.Name="LYC";
mytest.T_User.AddObject(user1);//.net framework 4.0及以上为Add()//只是告诉mytest,实体已经准备好了,你随时可以更新到数据库
mytest.SaveChanges();//将数据更新到数据库中
#endregion
2、查询语句
#region 查询结果可能是多条数据,所以返回为集合
var user= fron c in mytest.T_User
where c.UserName=="LYC"
select c;
//select * --3,根据1和2的设置条件进行查询--
//from T_User --1,告诉程序从哪个表里查询--
//where UserName='yhb' --2,告诉程序要从这张表里查询哪些数据--
//更加符合人类思维的语句应该是
//from T_User
//where UserName='yhb'
//select *
foreach(T_User itme in user)//遍历输出符合条件的结果
{
Console.WriteLine(itme.Name);
}
#endregion
#region 设置返回第一条数据,为空返回Null
var user=( fron c in mytest.T_User
where c.UserName=="lyc"
select c),FirstOrDefault();//FirstOrDefault():返回第一条数据或null
foreach(T_User itme in user)
{
Console.WriteLine(itme.Name);
}
#endregion
3.修改、删除,接查询
#region 从获取到的user进行修改、删除
user.Name="你猜";
mytest.SaveChangs();//生成修改
mytest.T_User.DeleteObject(user);
mytest.SaveChangs();//生成删除
#endregion
二、EF建立数据库,建立T_User表
1、新建ADO.NET实体数据模型,选择空模型。右击—添加—实体。
2、添加属性:选中T_Uer右击,添加 标量属性;
3、点击修改字段名称;在属性里修改字段类型。
4、以上创建的是实体模型,右击—根据模型生成数据库。如需新建数据库,“在选择或输入一个数据库名”处输入新的数据库名称。
注:如果没有成功创建数据库,右击sql页面—执行SQL语句 即可。
EF是在原来的ADO.NET基础上发展起来的,其目的还是为了和数据库打交道,只是不需要像ADO.NET那样,还得掌握sql语句。
以上就是EF的基本操作。