【ASP.NET MVC】数据库访问(5)

一、ORM简介

对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 

以上是官话,个人理解:

1、解决问题:数据库的访问

2、如何解决:数据库由表、记录 组成      -》    把表映射成面向对象的类   ,记录则是对象!

3、两个方面:解决数据描述(所谓的POJO或者实体类)和数据CURD操作;

ASP.NET的解决方案有 Entity Framework (EF)等,初学者可以暂时避开,就从问题着手解决数据库访问问题:把表变成类,对类生成的对象来 -》   实现数据库增删查改操作

二、最简单的MYSQL访问实例

1、打开前面创建的MVC 4.0工程(如没有,重新创建一个,记得添加Controller和Index的视图);

2、在Models里(其实可以在其他任意目录)添加类:

添加一个静态string 字符串连接字段

 public static string SqlserverConnectStr = "server=127.0.0.1;charset=utf8;user id=root;persistsecurityinfo=True;database=test;Password=XXXXXXXXX";

Mysql连接字段,server表明MYSQL安装的主机IP,user id 和 Password 分别是Mysql数据库的用户名和密码 ,database 是数据库名

添加一个静态Query 返回 DataSet (数据集,查询集)——访问数据库返回满足需要的数据集合。

 public static DataSet Query(string SQLString)
        {
            using (MySqlConnection connection = new MySqlConnection(SqlserverConnectStr))
            {
                DataSet ds = new DataSet();
                try
                {
                    connection.Open();
                    MySqlDataAdapter command = new MySqlDataAdapter(SQLString, connection);
                    command.Fill(ds, "ds");
                }
                catch (MySql.Data.MySqlClient.MySqlException ex)
                {
                    throw new Exception(ex.Message);
                }
                return ds;
            }
        }

问题:

1、DataSet未定义

 在小齿轮上点击添加对应的引用(或者手动添加):

 2、MySqlConnection 则需要添加引用:

右键添加引用,选择添加引用:

点击浏览,选择MYSQL的DLL

 添加到工程:

 在类中,添加引用:

 测试:

在MYSQL中新建test数据库,并添加表:

 其中表结构和测试数据如下:

在Home控制器中的Index action中添加代码:

 下断点(F9)

 F5进入调试-》 WEB默认路由为 home/index  所以自动进入index的Action

F10 执行到下一步,在监视中,添加对set的监视:

 说明:

1、Query函数执行的select 语句是数据库的SQL(结构化查询语言)的命令;本例中是查找user表中所有的数据   select *  from  user

2、执行查询语句返回是一个数据集合(DataSet),可能包含多张数据表(Tables),本例看第一张表的数据(Tables[0]),数据表有很多行  Rows  ,监视窗口看的第一行;

3、每一行数据就是一条记录,记录有很多属性,所有再展开 ItemArray 数组,可以看到第一条记录的每个字段的值

4、可以使用字段名作为索引来查看数据,如下:

综上:数据库的访问并不难,别被所谓的OMR计算吓到了!最简单的数据库访问可以很简单解决这个问题!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ASP.NET MVC 中,可以将数据库存储过程转化为函数内的方式来处理数据。下面是一种将存储过程转换为函数的方法: 1. 在你的数据库中创建一个函数,以替代存储过程。函数可以使用 SQL 语句来实现相同的逻辑,并返回结果。 2. 在你的 ASP.NET MVC 项目中,可以使用 Entity Framework 或者 ADO.NET 来调用该函数并获取结果。 下面是一个示例,使用 Entity Framework 来调用数据库函数: 1. 在数据库中创建一个函数: ```sql CREATE FUNCTION YourFunctionName (@Parameter1 INT, @Parameter2 VARCHAR(50)) RETURNS INT AS BEGIN DECLARE @Result INT -- 实现函数逻辑... -- 使用 SELECT 语句返回结果 RETURN @Result END ``` 2. 在你的 ASP.NET MVC 项目中使用 Entity Framework 调用该函数: ```csharp public class YourDbContext : DbContext { public YourDbContext() : base("YourConnectionString") { } // 声明用于调用函数的方法 [DbFunction("YourNamespace", "YourFunctionName")] public static int YourFunction(int parameter1, string parameter2) { throw new NotSupportedException(); } } public class YourController : Controller { private YourDbContext db = new YourDbContext(); public ActionResult YourAction() { // 调用函数 int result = YourDbContext.YourFunction(123, "abc"); // 处理函数返回结果 return View(); } } ``` 在上面的示例中,你需要将 "YourFunctionName" 替换为你在数据库中创建的函数的名称,并根据需要添加参数和处理函数的返回结果。 请注意,这只是一种在 ASP.NET MVC 中使用 Entity Framework 调用数据库函数的方法之一。你还可以使用其他 ORM 工具或直接使用 ADO.NET 来调用函数。根据你的实际需求和数据库配置,选择适合的方法来处理数据库函数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

易老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值