net下 Mysql Linq的使用, 更新数据,增加数据,删除数据
net下访问mysql主要有2种方法:
1.字符串拼接访问
a.mysql官网下载并安装mysql-connector-net.
b项目中引用mysql.data等
所有增删改查可以通过拼接sql语句全部实现,但有注入风险,建议用方法2.
2.Linq
a.mysql官网下载并安装mysql-connector-net.并重启,
b.在vs中打开"服务器资源管理器“并添加相应连接(a步骤重启后,在"更改数据源"中会增加连接”MySQL DataBase“)


c.创建”ADO.NET实体数据模型“向导中设置为b步骤中的数据库连接即可连接
d.Linq连接读取
1查询数据
/// <summary>
/// 查询数据
/// </summary>
public static List<Model.t_user> GetUserList()
{
var _db = new DataBase. GJHLWebChat();
return _db.t_user.Select(LinqToModel).ToList();
}
2新增数据
/// <summary>
/// 新增用户
/// </summary>
/// <param name="u"></param>
/// <returns></returns>
public static bool AddUser(Model.t_user u)
{ var _user = new DataBase.t_user()
{
AppId = u.AppId,
AppSecret = u.AppSecret,
IsDelete = u.IsDelete==?true:false,
LoginName = u.LoginName,
pwd = u.pwd,
RegTime = u.RegTime,
Tel = u.Tel,
userid = u.userid,
UserName = u.UserName
};
_db.t_user.AddObject(_user);
_db.SaveChanges();
return true; }
3更新数据
/// <summary>
/// 更新
/// </summary>
/// <param name="u"></param>
/// <returns></returns>
public static bool UpdateUser(Model.t_user u)
{
var _db = new DataBase.GJHLWebChat(); var _user= _db.t_user.Where(m => m.userid == u.userid).FirstOrDefault();
if (_user!=null)
{
_user. AppId=u.AppId;
_user. AppSecret=u.AppSecret;
_user. IsDelete= u.IsDelete==?true:false;
_user. LoginName=u.LoginName;
_user. pwd=u.pwd;
_user. RegTime=u.RegTime;
_user. Tel=u.Tel;
_user.UserName = u.UserName; _db.AcceptAllChanges();//接受所有改变
_db.SaveChanges();//更新改变
return true;
}
return false; }
4删除数据
/// <summary>
/// 删除
/// </summary>
/// <param name="u"></param>
/// <returns></returns>
public static bool DeleteUser(Model.t_user u)
{
var _db = new DataBase.GJHLWebChat();
var _user = _db.t_user.Where(m => m.userid == u.userid).FirstOrDefault();
if (_user != null)//查找并删除用户
{
_db.t_user.DeleteObject(_user);
_db.SaveChanges();
return true;
}
return false;
}
附:Entity Framework vs. LINQ to SQL:http://blog.csdn.net/jfchef/article/details/7632872
msdn objectcontext:http://msdn.microsoft.com/zh-cn/library/vstudio/system.data.objects.objectcontext_methods.aspx
net下 Mysql Linq的使用, 更新数据,增加数据,删除数据的更多相关文章
- MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理
MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- SQL中CRUD C——create 添加数据 R——read 读取数据 U——update 修改数据 D——delete 删除数据
在SQL server中对数据库的操作: 删除表:drop table 表名修改表:alter table 表名 添加列add 列名 列类型alter table 表名 drop column 列名 ...
- MySQL基本SQL语句之数据插入、删除数据和更新数据
一.INSERT插入数据: 方法一:批量插入 基本语法: INSERT INTO tb_name (col1, col2, ...) VALUES (val1, val2, ...)[,(val1, ...
- Windows环境下Mysql如何快速导入或恢复表为innodb的数据
注: 一.这个是对Innodb的数据恢复.MyISAM不需要这么麻烦,只要数据文件存在直接复制过去就可以. 二.该方法只适用于 1:想要恢复或者导入表的ibd文件和frm文件 2:你不仅需有ibd和f ...
- 解决Mysql Workbench的Error Code: 1175错误 无法删除数据
使用workbench,如果你要批量更新或删除数据,一般会报“ Error Code: 1175 You are using safe update mode and you tried to upd ...
- Mysql学习—查看表结构、修改和删除数据表
原文出自:http://blog.csdn.net/junjieguo/article/details/7668775 查看表结构 查看表结构可以用语句DESCRIBE或SHOW CREATE TAB ...
- Mysql常用sql语句(24)- delete 删除数据
测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 delete 也属于DML语句(数据操纵语句) ...
随机推荐
- android中常用的尺寸单位及其关系
1 尺寸单位定义 px(pixel,像素):每个px对应屏幕上的一个点 dip或dp(device independent pixels,设备独立像素):一种基于屏幕密度的抽象单位.在每英寸160个点 ...
- 常用 Unicode 符号列表
Unicode 中包含了各种符号,我们可以作为图标来使用.这里整理一下常用的一些符号. 一.拉丁字母补全(Latin-1 Supplement):U+0080 至 U+00FF Unicode 编号 ...
- iOS 键盘框架IQKeyboardManager使用
框架地址:https://github.com/hackiftekhar/IQKeyboardManager AppDelegate.m文件中 #import <IQKeyboardMana ...
- maven快速入门
一.maven maven可以说是管理项目的优秀工具,管理jar包 二.mave安装 1.先安装jdk(本文不详细讲) 2.安装maven ①.maven下载 http://maven.apach ...
- .Net Core-TagHelpers-Environment
当我们新建一个.net core项目时,发现页面中有个奇怪的TagHelper元素,如下: <environment names="Development"> ...
- android studio里的build.gradle基本属性
//声明是android 程序 apply plugin: 'com.android.application' android { //编译SDK版本 compileSdkVersion 23 // ...
- Select-Object用法
展开 modules 属性的详细信息 get-process |? {$_.processname -eq "cmd"}|select -ExpandProperty module ...
- 【51】编写new和delete时需固守常规
1.[50]讲了,有很多理由需要写个自定义的new/delete,自定义new/delete的时候,需要遵守一些规则. 2.循环申请,直到成功或者抛出异常,如下: void* operator new ...
- Android TabHost TabWidget 去除黑线(底部下划线)
采用TabHost布局时,往往会发现默认的系统风格与软件风格很不协调,比如TabWidget的下划线影响布局效果.通常情况下会去除其下划线.如果是采用xml布局文件,在TabWidget的属性项设置a ...
- [015]staic成员及staic成员函数
C++primer里面讲过:static成员它不像普通的数据成员,static数据成员独立于该类的任意对象而存在,每个static数据成员是与类关联的对象,并不与该类的对象相关联!这句话可能比较拗口, ...