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的使用, 更新数据,增加数据,删除数据的更多相关文章

  1. MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理

    MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...

  2. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  3. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  4. SQL中CRUD C——create 添加数据 R——read 读取数据 U——update 修改数据 D——delete 删除数据

    在SQL server中对数据库的操作: 删除表:drop table 表名修改表:alter table 表名 添加列add 列名 列类型alter table 表名 drop column 列名 ...

  5. MySQL基本SQL语句之数据插入、删除数据和更新数据

    一.INSERT插入数据: 方法一:批量插入 基本语法: INSERT INTO tb_name (col1, col2, ...) VALUES (val1, val2, ...)[,(val1, ...

  6. Windows环境下Mysql如何快速导入或恢复表为innodb的数据

    注: 一.这个是对Innodb的数据恢复.MyISAM不需要这么麻烦,只要数据文件存在直接复制过去就可以. 二.该方法只适用于 1:想要恢复或者导入表的ibd文件和frm文件 2:你不仅需有ibd和f ...

  7. 解决Mysql Workbench的Error Code: 1175错误 无法删除数据

    使用workbench,如果你要批量更新或删除数据,一般会报“ Error Code: 1175 You are using safe update mode and you tried to upd ...

  8. Mysql学习—查看表结构、修改和删除数据表

    原文出自:http://blog.csdn.net/junjieguo/article/details/7668775 查看表结构 查看表结构可以用语句DESCRIBE或SHOW CREATE TAB ...

  9. Mysql常用sql语句(24)- delete 删除数据

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 delete 也属于DML语句(数据操纵语句) ...

随机推荐

  1. jquery-ui 之draggable详解

    举一个例子: <div class="box"> <div id="draggable"> <p>Drag me aroun ...

  2. like用法

    SQL:btitle like '%"+keyword+"%' 存储过程:keyword like ''%'+@keyword+'%'' 直接查找:name like '%wang ...

  3. SpringMVC(一)

    开始学习SpringMVC了,就写下每次学习的内容,以及自己的理解.方便以后回顾知道自己哪里好哪里不好~~~ 一.目录 1.主目录如此: 2.target目录 二.文件 1.主要用到的几个文件夹(如主 ...

  4. 让asp.net web api同时支持[AcceptVerbs("GET","POST")]

    在使用第三方接口时,有时候会看到接口同时支持GET和POST,当时想想webapi有AcceptVerbs特性,没有细想便想当然肯定会支持,后来项目中需要用到,当时在没有参数传入下确实支持,直到早几天 ...

  5. CGAffineTransform相关函数

    CoreGraphics.h CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI_2);
[xxx setTransform ...

  6. sudo: /etc/sudoers is mode 0640, should be 0440解决办法

    ubuntu或者CentOS中,/etc/sudoer 的权限为 0440时才能正常使用,否则sudo命令就不能正常使用.出现类似:sudo: /etc/sudoers is mode 0640, s ...

  7. NSDateFormatter 问题

    NSDateFormatter *inputDateFormatter = [[NSDateFormatter alloc] init]; NSString *inputDateStr = @&quo ...

  8. Windows内核之进程基本含义以及进程的创建

    进程 1 进程的含义: 1.1   一个是操作系统用来管理进程的内核对象. 内核对象也是系统用来存放关于进程的统计信息的地方. 1.2   还有一个是地址空间,它包括全部可运行模块或DL L 模块的代 ...

  9. 【C语言】字符串替换空格:实现一个函数,把字符串里的空格替换成“%20”

    //字符串替换空格:实现一个函数,把字符串里的空格替换成"%20" #include <stdio.h> #include <assert.h> void ...

  10. java_泛型 TreeSet 判断hashcode/length(升序排列)

    package ming; import java.util.ArrayList; import java.util.Collection; import java.util.Comparator; ...