数据库与MVC增的增删查改之新增

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:Visual Studio 2015,MVC增

作者: 梁柏源

撰写时间:2019/4/11

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

由于上次分享查询和删除的时候,本人因疏忽把标题写成了新增和删除;这次就把新增给补回来。

同意的拿数据库和MVC做对比,下面是数据库新增的操作:

数据库的新增insert:(假设要把123,4,'长跑','06','跑步' ,1803)

insert into 体育表(运动ID,跑步ID, 专业名称, 运动员编号,班级)

 values(123,4,'长跑','06','跑步' ,1803)

就这样就完了,不过要注意以下几点:

  1. 插入的值的个数和数据类型必须和表结构定义的列的个数和数据类型保持一致,必须一致,不然就白写了。
  2. 插入的值,所有的符号都是英文状态下的
  3. 新增的外键的值,必须在主键表中存在。
  4. 每一次新增只能操作一个表

MVC中的新增例子如下:

public ActionResult Insert (PW_Student pwStudent, PW_User pwUser, HttpPostedFileBase fileStudentImage)

        {

            ReturnJson returnJson = new ReturnJson();

            try

            {

                var studentCount = (from tbStudent in myModels.PW_Student

                   where tbStudent.studentID == pwStudent.studentID ||

                         tbStudent.StudentIDNum == pwStudent.StudentIDNum ||

                         tbStudent.StudentNumber == pwStudent.StudentNumber

                                    select tbStudent).Count();

                if (studentCount == 0)

                {       

                    var userCount = (from tbUser in myModels.PW_User

                                     where tbUser.UserNuber == pwStudent.StudentNumber || tbUser.UniformAuthenticationCode == pwUser.UniformAuthenticationCode

                                     select tbUser).Count();

                    if (userCount == 0)

                    {                 

                        pwUser.UserNuber = pwStudent.StudentNumber;

                        //密码与学号一致,密码要加密

                        pwUser.Password = Common.AESEncryptHelper.Encrypt(pwStudent.StudentNumber);

                        pwUser.ToVoidNo = true;//有效账号

                        myModels.PW_User.Add(pwUser);

                      

                            pwStudent.UserID = userId;//用户ID

                            pwStudent.StudentState = "应届";

                            myModels.PW_Student.Add(pwStudent);

 

                            //三、新增用户角色明细表

                            PW_UserRoleDetail pwUserRoleDetail = new PW_UserRoleDetail();

                            pwUserRoleDetail.UserID = userId;

                            pwUserRoleDetail.UserTypeID = 6; //对应数据库的类型:6:表示学生

                            myModels.PW_UserRoleDetail.Add(pwUserRoleDetail);

                            myModels.SaveChanges();

                            returnJson.State = true;

                            returnJson.Text = "信息保存成功!";

 

                        }

                        else

                        {

                            returnJson.State = false;

                            returnJson.Text = "保存失败!";

                        }

 

                    }

                }

                else

                {

                    returnJson.State = false;

                    returnJson.Text = "该信息已经存在!";

                }

            }

            catch (Exception e)

            {

                Console.WriteLine(e);

                returnJson.State = false;

                returnJson.Text = "数据异常!";

            }

            return Json(returnJson, JsonRequestBehavior.AllowGet);

        }

看本来是这样的下面再加一个上去:

然后点击保存,弹出提示框;

点击确定,新增成功。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVC模式的实现对数据库增删改查 部分代码: package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import common.DBConnection; import bean.Contact; public class ContactDAO { public List getAllContact() throws Exception{ Connection conn=DBConnection.getConntion(); PreparedStatement ps=conn.prepareStatement("select * from Contact"); ResultSet rs=ps.executeQuery(); List list = new ArrayList(); while(rs.next()){ int id = rs.getInt("id"); String name = rs.getString("name"); String phone = rs.getString("phone"); String address = rs.getString("address"); Contact c = new Contact(); c.setId(id); c.setName(name); c.setPhone(phone); c.setAddress(address); list.add(c); } rs.close(); ps.close(); conn.close(); return list; } public void addContact(String name,String phone,String address) throws Exception{ String sql = "insert into contact(id,name,phone,address) values(seq_contact.nextval,?,?,?)"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setString(1, name); pstmt.setString(2, phone); pstmt.setString(3, address); pstmt.executeUpdate(); } public void delContact(int id) throws Exception{ String sql = "delete from contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); pstmt.executeUpdate(); } public Contact getContactById(int id) throws Exception{ String sql = "select * from Contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); ResultSet rs = pstmt.executeQuery(); Contact c = null; while(rs.next()){ // int id = rs.getInt("id"); String name=rs.getString("name"); String p
好的,我可以为您讲解一下关于MVC架构和EF操作的增删查改MVC是一种软件架构模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。模型表示应用程序的数据和业务逻辑,视图展示数据给用户,控制器接收用户输入并调用模型和视图进行处理。 EF(Entity Framework)是一个基于.NET Framework的ORM(对象关系映射)框架,它可以使开发人员使用.NET语言编写与数据库交互的代码,而不需要直接与数据库打交道。 下面是关于如何使用MVC架构和EF进行增删查改的示例代码: 1. 增加操作: ```c# [HttpPost] public ActionResult Create(Student student) { using (SchoolContext db = new SchoolContext()) { db.Students.Add(student); db.SaveChanges(); } return RedirectToAction("Index"); } ``` 2. 删除操作: ```c# public ActionResult Delete(int id) { using (SchoolContext db = new SchoolContext()) { Student student = db.Students.Find(id); db.Students.Remove(student); db.SaveChanges(); } return RedirectToAction("Index"); } ``` 3. 修改操作: ```c# [HttpPost] public ActionResult Edit(Student student) { using (SchoolContext db = new SchoolContext()) { db.Entry(student).State = EntityState.Modified; db.SaveChanges(); } return RedirectToAction("Index"); } ``` 4. 查询操作: ```c# public ActionResult Details(int id) { using (SchoolContext db = new SchoolContext()) { Student student = db.Students.Find(id); return View(student); } } ``` 以上是关于MVC架构和EF操作的增删查改的示例代码,希望能对您有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值