解决DB2数据库修改字段值/插入数据失败

修改字段中出现不能修改现象;有以下原因:

1、字段是否有约束?

2、字段值是否自增?

3、该表是否被使用,或者关联触发器?

DB2中,插入数据过程,对字段的增加易出现隐性问题:

 代码如下 复制代码

INSERT INTO LGLK.T_UUM_DEPT (UUID ,DEPT_NO, DEPT_NAME, PARENT_ID, ISLEAF, STATUS, CJZID, CJZSSBMID, CJSJ) VALUES ( '402881f03e11768c013e1187f22e0002','402881f03e11768c013e1187f22e0003', '杭州下城区大队', '402881ea3d8ba15e013d8ba5b6370004',
'1', '1', '402881e63d778f3b013d779029600001', '402881ea3d8ba15e013d8ba4ed7d0002', current timestamp);

如第一个UUID字段为主键,每次插入必须不一样,而且跟原有的不一样,否则插入失败,若字段值有关联,则字段值必须一致,否则出现隐性错误,比如UUID的值和DEPT_NO的值。

 代码如下 复制代码

DB2中,UPDATE

修改字段的数据类型:

 代码如下 复制代码
update student set usersetateid=(select usertstateid where userstate=‘活动’) where studentid=‘选中行的sutdentid’

假设A,B两张表:

 代码如下 复制代码

UPDATE A

SET A1=(SELECT B1 FROM B WHERE A.ID = B.ID)

表明要对表A所有行的A1字段进行UPDATE:对满足WHERE A.ID = B.ID的行,则进行更新A1=B1;对不满足改条件的行,则对A1更新为A1=NULL。

时间: 2024-11-08 20:13:27

解决DB2数据库修改字段值/插入数据失败的相关文章

数据表-用ExpandableListView显示数据库的字段值

问题描述 用ExpandableListView显示数据库的字段值 问题是从数据表(person表)读取数据(personname),用ExpandableListView显示数据 这是最后的结果图 写了两个文件PersonActivity和ExpandableAdapter 这两张代码都是写在PersonActivity里面,错误在于这样直接setText就是不行,取不到值,但是之前从person表里面已经读取到了字段,我每一个和TextView和edittext都写了不同的名字,就是直接这样

把一个类集合的某条该类数据的某个字段值插入到textbox中,如何通过这个字段值反查得到该条特定的类

问题描述 把一个类集合的某条该类数据的某个字段值插入到textbox中,如何通过这个字段值反查得到该条特定的类,类集合里的每一条类数据是唯一的,而字段值不是唯一的,想用dictionary却不行,求一个思路,能不能在textbox插入这个字段值的时候能不能在这个字段值上绑定个类似唯一id的东西,那么这个字段值显示起来是个string,而实际还包含有一个id,方便我反查,请问怎么能做到,或者有什么好的思路 解决方案 解决方案二:可以用Dictionary啊,拿ID当Key,要显示的字段为Value

mysql-MySql数据库问题,关于插入数据的。

问题描述 MySql数据库问题,关于插入数据的. 就是有一个用户表a,字段有OID(主键,自动递增),用户名字,性别,创建时间等 .然后还有一个表b,字段是用户表的主键OID和对应用户身份RID.身份就比如说超级管理员,组长,领导,员工这样的.现在要给用户表插入数据,之前只是给这个用户表插入数据就可以了,现在就是要默认插入的用户对应的身份是组长. 比如对应领导的RID是1,组长是2,用户是3 ,管理员是0. 用户表a主键OID是对应表b的RID的,比如第一个员工是10000,第二个10001,第

update-sql 2008R2修改字段值

问题描述 sql 2008R2修改字段值 怎么我写了一条修改sql语句 修改成功后,字段内的值和我修改的值不一样 就是前面加了一个0 后面少了个7 要修改的值:0x89504E......F1F71EDDA7 修改后的值:0x089504E......F1F71EDDA sql 语句: update Product_Staff_Basic set Psblcon = 0x89504E......F1F71EDDA7 where PsbId = 1 解决方案 update Product_Staf

应用-andro数据库技术问题,无法插入数据

问题描述 andro数据库技术问题,无法插入数据 开发的应用在android模拟器上能够实现数据的插入和查找,安装到小米4手机上就不行,提示无法插入数据 解决方案 在实机上该应用是否没有写权限? 解决方案二: 可能写入的数据需要root才能访问?可以把保存的位置说一下吗? 解决方案三:

Spring往SQL SERVER2000插入数据失败

问题描述 使用SSH框架,用java往数据库SQL SERVER2000里插入数据时报Hibernate flushing: could not insert: [com.diagnose.bean.JianCeInfo]; SQL [insert into jianCeInfo (typeNo, trainNo, cheCi, jcDate, jcEndDate, operateUser, placeName, jcResult1, jcResult2, kz1, kz2, jcCount,

mysql 插入数据失败防止自增长主键增长的方法

mysql设置了自增长主键ID,插入失败的那个自增长ID也加一的,比如失败5个,下一个成功的不是在原来最后成功数据加1,而是直接变成加6了,失败次数一次就自动增长1了,能不能让失败的不增长的? 或者说mysql插入数据失败,怎么能防止主键增长? MYSQL不保证AUTO_INCREMENT依次增长(1,2,3,4,5),但是可以保证正向增长(1,3,5,9)所以,当你某次操作失败后,下次AUTO_INCREMENT就不是顺序的了. innodb的自增是缓存在内存字典中的,分配方式是先预留,然后再

mfc-MFC向mysql中插入数据失败

问题描述 MFC向mysql中插入数据失败 MFC向mysql中插入(删除,更新)数据失败,但是查询是可以成功的,将我的插入语句在navicat for mysql中执行是可以正常插入的:INSERT INTO student VALUES ('111''xzf')求大神指导,谢谢!(据说是权限什么的问题,不太懂) 解决方案 如果确定语句是一样的,但在代码中无法正确的执行,应该就是权限的问题. MySQL的用户权限设置问题注意用户权限,与系统主机的权限 解决方案二: MySQL 插入数据

.net实现oracle数据库中获取新插入数据的id的方法_实用技巧

在sql sever中实现插入数据的自动增长是很容易的,但是在oracle数据库中实现这一操作不是很容易,同时要想在.net中实现获取新插入数据的id,而且不会出现读错的情况,就更显得困难了,为了解决在oracle数据中插入的数据能够自增id,同时获取新数据的id,并避免因并发操作而出现的id读错的问题. 数据表结构为test(id,name) 首先,解决数据id自增问题 创建一个序列sequence(sequence详解可从网上搜一下,这里不赘述) create sequence SEQ_te