精华内容
下载资源
问答
  • 两个是相互关联的,修改表一中的分类字段,二中的字段也跟着修改。由于一种没有ON DELETE CASCADE,求没有ON DELETE CASCADE的联动修改语句怎么写? ![图片说明]...
  • 多表联合修改

    2018-11-12 12:53:00
    需要根据另一个的关联数据修改当前 update a set a.id=123 where exists (select 1 from b where a.id=b.id and b.status=1) 转载于:https://www.cnblogs.com/tian159/p/9945827.html

    需要根据另一个表的关联数据修改当前表

    update a set a.id=123 where exists (select 1 from b where a.id=b.id and b.status=1)
    

    转载于:https://www.cnblogs.com/tian159/p/9945827.html

    展开全文
  • 程序员的日常操作—修改多表数据

    千次阅读 2019-05-17 14:42:15
    开发工具与关键技术:Visual Studio ASP.NET MVC 作者:刘剑鸿 撰写时间:2019年05月14...单表修改与多表修改的操作步骤大同小异,都要运用到传递过来的参数,就是从页面新增传递过来的数据。接下来我们要在控制器里...

    开发工具与关键技术:Visual Studio ASP.NET MVC

    作者:刘剑鸿

    撰写时间:2019年05月14日 星期二

                                         程序员的日常操作—修改多表数据                      
    

    单表修改与多表修改的操作步骤大同小异,都要运用到传递过来的参数,就是从页面新增传递过来的数据。接下来我们要在控制器里进行五步操作。1判断数据是否在数据库已经存在。3获取要修改的数据。3根据主键ID提取数据4执行修改5将修改的数据保存到数据库。步骤和单表的修改操作没什么不同,与多表新增更相似,新增也可以说是修改的操作。不过在多表修改操作里,并不是多张数据表一起修改,而是一张一张的修改。重点是要会判断先改哪张表。下面是两张关系表:
    在这里插入图片描述

    这两张关系表里很清楚的看到,用户表里面的主键(用户ID)作为学生表和用户角色明细表里面的外键.所以我们就先修改用户表,在修改学生表、用户明细表。其代码如下:

     public ActionResult UpdateStudent(PW_Student pwStudent, PW_User pwUser, HttpPostedFileBase fileStudentImage)
    
        {
    
            ReturnJson returnJson = new ReturnJson();
    
            try
    
            {
    
                //判断修改后的数据是否与数据库数据重复
    
                var oldStudentRow = (from tbStudent in myModels.PW_Student
    
                                     where tbStudent.studentID!= pwStudent.studentID &&
    
                                          (tbStudent.StudentNumber == pwStudent.StudentNumber ||
    
                                          tbStudent.StudentIDNum == pwStudent.StudentIDNum)
    
                                     select tbStudent).Count();
    
                if (oldStudentRow == 0)
    
                {
    
                    var userCount = (from tbUser1 in myModels.PW_User
    
                                     where tbUser1.UserID !=pwUser.UserID &&
    
                                    (tbUser1.UserNuber == pwStudent.StudentNumber ||tbUser1.UniformAuthenticationCode == pwUser.UniformAuthenticationCode)
    
                                     select tbUser1).Count();
    
                    if (userCount == 0)
    
                    {
    
                        //根据UserID将需要修改的用户表的数据提取出来
    
                        PW_User dbUser = (from tbUser in myModels.PW_User
    
                                          where tbUser.UserID ==pwUser.UserID
    
                                          select tbUser).Single();
    
                        //账号
    
                        dbUser.UserNuber =pwStudent.StudentNumber;
    
                        //密码(加密后的账号)
    
                        dbUser.Password =Common.AESEncryptHelper.Encrypt(pwStudent.StudentNumber);
    
                        //获取统一认证码
    
                       dbUser.UniformAuthenticationCode = pwUser.UniformAuthenticationCode;
    
                        //保存新的用户信息
    
                        myModels.Entry(dbUser).State= System.Data.Entity.EntityState.Modified;
                        //根据StudentID将需要修改的学生表的数据提取出来
                        PW_Student dbStudent = (from tbStudent in myModels.PW_Student
                                               where tbStudent.studentID == pwStudent.studentID
    
                                               select tbStudent).Single();
    
                        //身份证
    
                        dbStudent.StudentIDNum= pwStudent.StudentIDNum;
    
                        //学号
    
                        dbStudent.StudentNumber =pwStudent.StudentNumber;
    
                        //姓名
    
                        dbStudent.StudentName =pwStudent.StudentName;
    
                        //性别
    
                        dbStudent.StudentSex =pwStudent.StudentSex;
    
                        //学院ID
    
                        dbStudent.AcademeID =pwStudent.AcademeID;
    
                        //年级ID
    
                        dbStudent.GradeID =pwStudent.GradeID;
    
                        //专业ID
    
                        dbStudent.SpecialtyID =pwStudent.SpecialtyID;
    
                        //班级ID
    
                        dbStudent.ClassID =pwStudent.ClassID;
    
                        //图片
    
                        if (fileStudentImage!= null && fileStudentImage.ContentLength> 0)
    
                        {
    
                            //存放图片的变量
    
                            byte[] imgFile = null;
    
                            //变量长度
    
                            imgFile = new byte[fileStudentImage.ContentLength];
    
                            //读取图片存入变量
    
                           
       fileStudentImage.InputStream.Read(imgFile, 0,
        fileStudentImage.ContentLength);
    
                           
        dbStudent.StudentPicture = imgFile;
    
                        }
    
                        //修改学生表信息
    
                       
      myModels.Entry(dbStudent).State = System.Data.Entity.EntityState.Modified;
    
                        //保存数据库
    
                        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);
    
        }
    

    而在视图里,保存多表修改数据操作和单表修改数据操作原理没什么不同。其实无论是多表还是单表,新增操作和修改操作总是大同小异。主要有五步操作,1获取页面数据2判断输入框的数据不为空3进行异步提交4关闭模态框5刷新一下表格。下面是保存多表修改代码:

      $("#btnSaveUpdate").click(function () {
    
            //获取页面数据
    
            var AcademeID = $("#formUpdateExaminee [name='AcademeID']").val();//学院ID
    
            var SpecialtyID = $("#formUpdateExaminee[name='SpecialtyID']").val();//专业ID
    
            var GradeID = $("#formUpdateExaminee [name='GradeID']").val();//年级ID
    
           var ClassID = $("#formUpdateExaminee[name='ClassID']").val();//班级ID
    
            var StudentNum = $("#formUpdateExaminee [name='StudentNumber']").val();//学号
    
            var UniformAuthenticationCode = $("#formUpdateExaminee [name='UniformAuthenticationCode']").val();//统一认证码
    
            var StudentName = $("#formUpdateExaminee[name='StudentName']").val();//姓名
    
            if (AcademeID > 0 && SpecialtyID > 0&& GradeID > 0 && ClassID > 0 && StudentNum != "" && UniformAuthenticationCode!= "" &&StudentName != "") 
    
            {
    
                //加载层
    
                var layerIndex = layer.load(0);
    
                //提交表单
    
                $("#formUpdateExaminee").ajaxSubmit(function (returnJson) {
    
                    //关闭加载层
    
                    layer.close(layerIndex);
    
                    if (returnJson.State == true) {
    
                        //关闭模态框
    
                        $("#modUpdateExaminee").modal("hide");
    
                        //刷新table
    
                        tabStudentSearch();
    
                    }
    
                    //提示信息
    
                   
     layer.alert(returnJson.Text, { icon: 0, title: '提示' });
    
                });
    
            }
    
            else {
    
                layer.alert('请填写完整信息', { icon: 0, title: '提示' });
    
            }
    
        });
    
    展开全文
  • mysql多表联查并修改

    千次阅读 2019-05-14 11:43:36
    参考此篇文章 https://blog.csdn.net/joyous/article/details/53898972
    展开全文
  • MySQL 多表关联修改语句

    万次阅读 2017-11-10 16:08:17
    update 1 ,2 ,3 set 1.postion = 2.id where 2.dvalue = 3.testquarters and 1.pinCode = 3.testpinCode and 1.`name` = 3.testname;
    update 表1 ,表2  ,表3 set 表1.postion = 表2.id  where  表2.dvalue = 表3.testquarters and 表1.pinCode = 表3.testpinCode and 表1.`name` = 表3.testname;
    
    展开全文
  • mysql 多表关联修改

    千次阅读 2018-10-26 15:14:17
    UPDATE c2_cmd_download t1 INNER JOIN c2_c2movie t2 on t2.`Code`=t1.TableObjectID LEFT JOIN t_program t3 on t2.CpContentId=t3.CPContentID SET t1.name = t3.name 
  • update table1 a -- 使用别名 set (a.xm,a.cj)=(select b.xm,b.cj from table2 b where b.xh=a.xh) where exists (select 1 from table2 b where b.xh=a.xh ); 总感觉这样效率很低0.0 ,完成任务为主吧。...
  • Oracle 多表关联查询后修改

    千次阅读 2014-05-27 10:12:49
    --单表修改,修改2014年4月份违法数据的同步标志位 update t_veh_traffic_vio t set t.synchflag = 0, t.synchstatus = 'u' where t.wfsj > to_date('2014-04-01', 'yyyy-mm-dd') and t.wfsj ('2014-05-01', '...
  • update 批量修改,oracle多表关联修改

    千次阅读 2017-06-28 17:26:50
    UPDATE UNIT U SET U.BASED_LOT_RRN = (SELECT L.BASED_LOT_RRN FROM LOT L WHERE U.LOT_RRN = L....Oracle,多表关联update,需要EXISTS update UNIT_SP_TEST_PROG G set file_column = ‘VFBC’ where EXISTS (SE
  • sqlserver 多表关联修改

    千次阅读 2016-11-01 17:47:17
    --错误写法:  update JFP_DEPT_copy a  set a.de_name = (select b.de_name from JFP_DEPT_copy b  where b.de_deptcode = a.de_...---正确写法: 要修改不能命名别名,可以用表名当做别名  upd
  • SQL Update多表联合修改

    千次阅读 2016-09-22 17:03:26
    1) Oracle 多表更新方法:  Oracle语法: UPDATE updatedtable SET (col_name1[,col_name2...])= (SELECT col_name1,[,col_name2...] FROM srctable [WHERE where_definition])  例子:UPDATE A a SET (a.a1,a....
  • 因为中间表带有属性,采用的映射方式 两个实体类都使用 @OneToMany( mappedBy="workDateTime")   需求:因为中间使用两个外键作为联合主键 ,如果需要对中间的属性进行修改, 1、一般做法 ...
  • MySQL 查看数据库结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库 查看数据库结构 可以使用 describe 语句来查看数据结构,代码如下: describe users; 在控制台中输入上述语句后的执行...
  • 之前修改两张及以上表的时候,总得需要用几次语句才修改,万一...多表多字段的时候,得用到表关联的方式修改信息: UPDATE `user` join `binding` on `user`.`uid`=`binding`.`uid` SET `user`.`renren`="" ,`bindi
  • MyBatis 动态修改多表数据

    千次阅读 2018-09-06 11:15:25
    update product p join productcategory c on p.categoryId=c.id join productstock s on p.ProId=s.ProId != null "> p.ProName=#{proName} ...重点:个数据有逗号--------------------,
  • SQL 多表复合查询修改 update set select

    万次阅读 2016-12-27 20:50:20
    SQL Server 多表复合查询修改 update t3 set t3.value = 0 from t1, t2, t3 where t2.id2 = t1.id1 and t2.id2 = t3.id3 and t3.id3 = 100 查询 t1 t2 t3 的关联信息,修改 t3 的一个字段。
  • 修改表结构 1. 修改表名RENAME ALTER TABLE 表名 RENAME 新表名; #数据库的名字,不能直接改,可以通过其他手段改。 2. 增加字段ADD ALTER TABLE 表名 ADD 字段名 数据类型 [完整性约束条件…], ADD 字段名 ...
  • 我用的存储引擎是MyISAM,有个连接会同时select这张表,但不会修改这张表,这样操作会不会有冲突,会不会锁? 不会锁,不会有冲突, MyISAM的读操作,不会阻塞其他用户对同一的读请求,但会阻塞对同一...
  • 几百个工作薄、几千个工作表,要汇总?怎么办?复制、粘贴……?搞死人,而且易出错!多薄多表合并,一键帮你搞定! ——Mergebooks.dll
  • Hive 添加注释、修改表注释

    千次阅读 2020-03-19 18:25:38
    添加注释、修改表注释的语句相同: 以下2个语句都正确: ALTER TABLE table_nameSET TBLPROPERTIES('comment' = '的新注释'); alter table table_name set tblproperties('comment' = '的新注释'); 注意:...
  • #问题 1.当你定义了一个模型User, 想有个不同表名内容一样的,user1,user2, user3.... 这种情况改如何操作呢?
  • --创建测试 create table test( id int; );--正确写法是每列都add/change/drop,逗号隔开,'column'可有可无,add支持列--添加列 alter table test add (c1 char(1),c2 char(1)); --correct,add支持列...
  • 本章主要内容:创建数据透视更改数据透视汇总方式,数据透视中的组合,汇总列数据,创建计算字段,生成张工作
  • mysql多表关联查询进行数据修改

    万次阅读 2016-11-14 13:26:17
    问题描述:进行update某个数据的时候,需要关联查询若干进行筛选过滤.  问题解决:  UPDATE t_order_thirdchild AS t  INNER JOIN t_order_attachment AS s ON s.forderId = t.fthirdchildId  SET t.fuserstate...
  • 修改多的中间的记录的方法

    千次阅读 2009-11-14 12:07:00
    修改多的中间的记录的方法一、把中间相应的字段先删除,然后再添加 *当单方是从数据库中查得持久化对象必须把此对象的set容器用clear()清空, *同时把一对的级联配置文件中的级联风格设置为cascade=...
  • 如何将mysql数据库中的MyISAM类型表更改为InnoDB类型的表改单个表改表修改为InnoDB修改为MyISAM批量修改mysql数据库字符集Mysql修改表、字段、库的字符集 改单个表 ALTER TABLE TABLENAME ENGINE=InnoDB; ALTER ...
  • 根据B、C内容修改A数据 A中stuid为学生号,testid为考试号,1,2,3,4,5为考试小题号;B中1,2,3,4,5内为学生答案, C中的stid为小题号,daan为标准答案,fs为每小题得分。 请教:如何用update set ...
  • mysql多表关联数据同时删除、修改

    千次阅读 2019-03-23 15:18:03
    1.修改 UPDATE table1 LEFT JOIN table2 ON table1.xx=table2.xx (关联的字段) SET table1.xx=value,table2.xx=value (update value) WHEREtable1.xx=xx (条件) 2.删除 deletefromtable1leftjointable2 ....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,833,545
精华内容 733,418
关键字:

多表修改