我做了一个基于dcom连接的三层结构程序,就是偶尔掉数据,伤心,这会是哪里有问题?(100分)

  • 主题发起人 主题发起人 ylbee
  • 开始时间 开始时间
Y

ylbee

Unregistered / Unconfirmed
GUEST, unregistred user!
程序是这样的,数据库oracle9i用2层程序连接没有问题(3层程序是2层改的)
服务器是win2k,客户机win98
看数据都没问题,就是修改数据后,有一些数据 有时候无法入库 如电话号码,照片等
有一个数据一直不能入库:如家庭地质
我是修改后,直接post post后直接applyupdate(-1),再refrash ClientdataSet
这时候dbgrid显示的数据就有上面的问题了
高手讲讲,这是什么问题,如何解决?
 
高手 都哪里去了。帮我看看啊!!!!!
程序的源代码 类似于 delphi自带的例子:ahdoc(好像是这样写的),我就在上面增加了
数据提交的功能。
提交数据有哪些要注意的地方,有经验的能否介绍一点?
 
中间层做成参数提交数据,真的就可以吗?
能不能介绍一下实现方法
 
在中间层建立参数后,客服机FETCH参数。对CLIENTDATASET进行参数赋值同时OPEN;
 
干吗用数据感应控件?不用Sql语句?用数据感应控件Append、Post很不好控制的。
 
我用的就是sql语句,
目前最大的问题就是:就是掉数据,还有添加新数据(这是个工资程序,生成新的一个月
的数据,不好怎样做。我在2层程序中以前的做法是:用sql取上月数据,同时将月份和奖金、税都
处理一下,然后控制提交方式为insert就可以了)
高手们看看,最好能给一些例子给我,谢谢先。
 
数据用参数方式传递,也太不方便了,我的一个员工包含17个字段信息:
还有图片和长的字符串
高手们,帮帮我,如果谁能帮我解决这2个问题,我以这套源代码相送
 
有人说 给clientdataset设置indexname就可以了
 
掉数据的原因有哪几种?
 
掉数据的问题还没有解决。:(
我现在将所有服务器装在一台机器上(win2k server ,delphi 6,oracle 9i),再开始调试。
打开sql monitor后,我在ide环境下开始运行客户端程序调试,发现中间服务器已经得到了数据,掉数据是
发生在中间层和数据库之间,因为好像clientdataset已经将纪录送到dataprovier,dataprovider通过query向数
据库提交数据才执行了下列的sql语句(不知道判断得对不对?我将sql monitor的纪录附在后面)
大家看看有什么好的解决方法?
一、我尝试修改了 黄明 的出生地(广东) 和 办公电话(2622003) 信息 ,通过刷新后 发现数据正常送库了,
sql monitor 最后纪录如下:
... ....
32947 23:26:18 SQL Stmt: ORACLE - Close
32948 23:27:08 SQL Transact: ORACLE - Set autocommit on/off
32949 23:27:08 SQL Prepare: ORACLE - SELECT EMPNO_INNER as "职工编号", EMPNO as "职工帐号", USERNAME as "姓名",
DEPARTMENTID as "部门编号" , HIREDATE as "上班日期", SEX as "性别",
ETHNOS as "民族", POLITY as "政治面貌",
ADDRESS as "地址", DUTY as "岗位",
SKILL as "职称", SPECILISM as "特长", EDUCATION as "学历",
PHONE_HOME as "家庭电话", PHONE_HOME1 as "家庭电话1",
PHONE_HOME2 as "家庭电话2", PHONE_MOBILE as "移动电话",
PHONE_MOBILE1 as "移动电话1", PHONE_MOBILE2 as "移动电话2",
PHONE_MOBILE3 as "移动电话3", FAX as "传真", E_MAIL as "E_MAIL",
ZIPCODE as "邮编", BIRTHDAY as "生日", BIRTHADDRESS as "出生地",
MARRIED as "婚否", PERSONHISTORY as "个人简历", PERSONID as "身份证号码",
DUTYCERFI as "上岗证", PHOTOES as "照片" , PHONE_WORK as "办公电话"
FROM STAFF Staff
32950 23:27:08 SQL Execute: ORACLE - SELECT EMPNO_INNER as "职工编号", EMPNO as "职工帐号", USERNAME as "姓名",
DEPARTMENTID as "部门编号" , HIREDATE as "上班日期", SEX as "性别",
ETHNOS as "民族", POLITY as "政治面貌",
ADDRESS as "地址", DUTY as "岗位",
SKILL as "职称", SPECILISM as "特长", EDUCATION as "学历",
PHONE_HOME as "家庭电话", PHONE_HOME1 as "家庭电话1",
PHONE_HOME2 as "家庭电话2", PHONE_MOBILE as "移动电话",
PHONE_MOBILE1 as "移动电话1", PHONE_MOBILE2 as "移动电话2",
PHONE_MOBILE3 as "移动电话3", FAX as "传真", E_MAIL as "E_MAIL",
ZIPCODE as "邮编", BIRTHDAY as "生日", BIRTHADDRESS as "出生地",
MARRIED as "婚否", PERSONHISTORY as "个人简历", PERSONID as "身份证号码",
DUTYCERFI as "上岗证", PHOTOES as "照片" , PHONE_WORK as "办公电话"
FROM STAFF Staff
32951 23:27:08 SQL Blob IO: ORACLE - Return blob data
32952 23:27:08 SQL Stmt: ORACLE - Fetch
32953 23:27:08 SQL Data Out: ORACLE - Column = 1, Name = 职工编号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 303004
32954 23:27:08 SQL Data Out: ORACLE - Column = 2, Name = 职工帐号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 00042
32955 23:27:08 SQL Data Out: ORACLE - Column = 3, Name = 姓名, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 王三
32956 23:27:08 SQL Data Out: ORACLE - Column = 4, Name = 部门编号, Type = fldZSTRING, Precision = 5, Scale = 0, Data = 303
32957 23:27:08 SQL Data Out: ORACLE - Column = 5, Name = 上班日期, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = 1/1/1996 23:39:11:0
32958 23:27:08 SQL Data Out: ORACLE - Column = 6, Name = 性别, Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
32959 23:27:08 SQL Data Out: ORACLE - Column = 7, Name = 民族, Type = fldZSTRING, Precision = 10, Scale = 0, Data = NULL
32960 23:27:08 SQL Data Out: ORACLE - Column = 8, Name = 政治面貌, Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
32961 23:27:08 SQL Data Out: ORACLE - Column = 9, Name = 地址, Type = fldZSTRING, Precision = 40, Scale = 0, Data = NULL
32962 23:27:08 SQL Data Out: ORACLE - Column = 10, Name = 岗位, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 教师
32963 23:27:08 SQL Data Out: ORACLE - Column = 11, Name = 职称, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 讲师
32964 23:27:08 SQL Data Out: ORACLE - Column = 13, Name = 学历, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 大学
32965 23:27:08 SQL Data Out: ORACLE - Column = 14, Name = 家庭电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32966 23:27:08 SQL Data Out: ORACLE - Column = 15, Name = 家庭电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32967 23:27:08 SQL Data Out: ORACLE - Column = 16, Name = 家庭电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32968 23:27:08 SQL Data Out: ORACLE - Column = 17, Name = 移动电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32969 23:27:08 SQL Data Out: ORACLE - Column = 18, Name = 移动电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32970 23:27:08 SQL Data Out: ORACLE - Column = 19, Name = 移动电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32971 23:27:08 SQL Data Out: ORACLE - Column = 20, Name = 移动电话3, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32972 23:27:08 SQL Data Out: ORACLE - Column = 21, Name = 传真, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32973 23:27:08 SQL Data Out: ORACLE - Column = 22, Name = E_MAIL, Type = fldZSTRING, Precision = 20, Scale = 0, Data = wqy@163.com
32974 23:27:08 SQL Data Out: ORACLE - Column = 23, Name = 邮编, Type = fldZSTRING, Precision = 8, Scale = 0, Data = 412008
32975 23:27:08 SQL Data Out: ORACLE - Column = 24, Name = 生日, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = NULL
32976 23:27:08 SQL Data Out: ORACLE - Column = 25, Name = 出生地, Type = fldZSTRING, Precision = 40, Scale = 0, Data = 常德
32977 23:27:08 SQL Data Out: ORACLE - Column = 26, Name = 婚否, Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
32978 23:27:08 SQL Data Out: ORACLE - Column = 27, Name = 个人简历, Type = fldZSTRING, Precision = 200, Scale = 0, Data = NULL
32979 23:27:08 SQL Data Out: ORACLE - Column = 28, Name = 身份证号码, Type = fldZSTRING, Precision = 18, Scale = 0, Data = NULL
32980 23:27:08 SQL Data Out: ORACLE - Column = 29, Name = 上岗证, Type = fldZSTRING, Precision = 26, Scale = 0, Data = NULL
32981 23:27:08 SQL Data Out: ORACLE - Column = 31, Name = 办公电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 2622001
32982 23:27:08 SQL Stmt: ORACLE - Fetch
32983 23:27:08 SQL Data Out: ORACLE - Column = 1, Name = 职工编号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 401001
32984 23:27:08 SQL Data Out: ORACLE - Column = 2, Name = 职工帐号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 00394
32985 23:27:08 SQL Data Out: ORACLE - Column = 3, Name = 姓名, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 张三封
32986 23:27:08 SQL Data Out: ORACLE - Column = 4, Name = 部门编号, Type = fldZSTRING, Precision = 5, Scale = 0, Data = 401
32987 23:27:08 SQL Data Out: ORACLE - Column = 5, Name = 上班日期, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = 9/5/1999 23:39:11:0
32988 23:27:08 SQL Data Out: ORACLE - Column = 6, Name = 性别, Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
32989 23:27:08 SQL Data Out: ORACLE - Column = 7, Name = 民族, Type = fldZSTRING, Precision = 10, Scale = 0, Data = NULL
32990 23:27:08 SQL Data Out: ORACLE - Column = 8, Name = 政治面貌, Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
32991 23:27:08 SQL Data Out: ORACLE - Column = 9, Name = 地址, Type = fldZSTRING, Precision = 40, Scale = 0, Data = NULL
32992 23:27:08 SQL Data Out: ORACLE - Column = 10, Name = 岗位, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 教师
32993 23:27:08 SQL Data Out: ORACLE - Column = 11, Name = 职称, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 讲师
32994 23:27:08 SQL Data Out: ORACLE - Column = 13, Name = 学历, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 大学
32995 23:27:08 SQL Data Out: ORACLE - Column = 14, Name = 家庭电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32996 23:27:08 SQL Data Out: ORACLE - Column = 15, Name = 家庭电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32997 23:27:08 SQL Data Out: ORACLE - Column = 16, Name = 家庭电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32998 23:27:08 SQL Data Out: ORACLE - Column = 17, Name = 移动电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
32999 23:27:08 SQL Data Out: ORACLE - Column = 18, Name = 移动电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33000 23:27:08 SQL Data Out: ORACLE - Column = 19, Name = 移动电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33001 23:27:08 SQL Data Out: ORACLE - Column = 20, Name = 移动电话3, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33002 23:27:08 SQL Data Out: ORACLE - Column = 21, Name = 传真, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33003 23:27:08 SQL Data Out: ORACLE - Column = 22, Name = E_MAIL, Type = fldZSTRING, Precision = 20, Scale = 0, Data = zxq@zhuzit.edu.cn
33004 23:27:08 SQL Data Out: ORACLE - Column = 23, Name = 邮编, Type = fldZSTRING, Precision = 8, Scale = 0, Data = 412008
33005 23:27:08 SQL Data Out: ORACLE - Column = 24, Name = 生日, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = NULL
33006 23:27:08 SQL Data Out: ORACLE - Column = 25, Name = 出生地, Type = fldZSTRING, Precision = 40, Scale = 0, Data = 湖南
33007 23:27:08 SQL Data Out: ORACLE - Column = 26, Name = 婚否, Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
33008 23:27:08 SQL Data Out: ORACLE - Column = 27, Name = 个人简历, Type = fldZSTRING, Precision = 200, Scale = 0, Data = NULL
33009 23:27:08 SQL Data Out: ORACLE - Column = 28, Name = 身份证号码, Type = fldZSTRING, Precision = 18, Scale = 0, Data = NULL
33010 23:27:08 SQL Data Out: ORACLE - Column = 29, Name = 上岗证, Type = fldZSTRING, Precision = 26, Scale = 0, Data = NULL
33011 23:27:08 SQL Data Out: ORACLE - Column = 31, Name = 办公电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 2622002
33012 23:27:08 SQL Stmt: ORACLE - Fetch
33013 23:27:08 SQL Data Out: ORACLE - Column = 1, Name = 职工编号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 401002
33014 23:27:08 SQL Data Out: ORACLE - Column = 2, Name = 职工帐号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 00395
33015 23:27:08 SQL Data Out: ORACLE - Column = 3, Name = 姓名, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 黄明
33016 23:27:08 SQL Data Out: ORACLE - Column = 4, Name = 部门编号, Type = fldZSTRING, Precision = 5, Scale = 0, Data = 401
33017 23:27:08 SQL Data Out: ORACLE - Column = 5, Name = 上班日期, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = 9/5/1999 23:39:11:0
33018 23:27:08 SQL Data Out: ORACLE - Column = 6, Name = 性别, Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
33019 23:27:08 SQL Data Out: ORACLE - Column = 7, Name = 民族, Type = fldZSTRING, Precision = 10, Scale = 0, Data = NULL
33020 23:27:08 SQL Data Out: ORACLE - Column = 8, Name = 政治面貌, Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
33021 23:27:08 SQL Data Out: ORACLE - Column = 9, Name = 地址, Type = fldZSTRING, Precision = 40, Scale = 0, Data = NULL
33022 23:27:08 SQL Data Out: ORACLE - Column = 10, Name = 岗位, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 教师
33023 23:27:08 SQL Data Out: ORACLE - Column = 11, Name = 职称, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 讲师
33024 23:27:08 SQL Data Out: ORACLE - Column = 13, Name = 学历, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 大学
33025 23:27:08 SQL Data Out: ORACLE - Column = 14, Name = 家庭电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33026 23:27:08 SQL Data Out: ORACLE - Column = 15, Name = 家庭电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33027 23:27:08 SQL Data Out: ORACLE - Column = 16, Name = 家庭电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33028 23:27:08 SQL Data Out: ORACLE - Column = 17, Name = 移动电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33029 23:27:08 SQL Data Out: ORACLE - Column = 18, Name = 移动电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33030 23:27:08 SQL Data Out: ORACLE - Column = 19, Name = 移动电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33031 23:27:08 SQL Data Out: ORACLE - Column = 20, Name = 移动电话3, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33032 23:27:08 SQL Data Out: ORACLE - Column = 21, Name = 传真, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33033 23:27:08 SQL Data Out: ORACLE - Column = 22, Name = E_MAIL, Type = fldZSTRING, Precision = 20, Scale = 0, Data = jds@zhuzit.edu.cn
33034 23:27:08 SQL Data Out: ORACLE - Column = 23, Name = 邮编, Type = fldZSTRING, Precision = 8, Scale = 0, Data = 412008
33035 23:27:08 SQL Data Out: ORACLE - Column = 24, Name = 生日, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = NULL
33036 23:27:08 SQL Data Out: ORACLE - Column = 25, Name = 出生地, Type = fldZSTRING, Precision = 40, Scale = 0, Data = ggg
33037 23:27:08 SQL Data Out: ORACLE - Column = 26, Name = 婚否, Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
33038 23:27:08 SQL Data Out: ORACLE - Column = 27, Name = 个人简历, Type = fldZSTRING, Precision = 200, Scale = 0, Data = NULL
33039 23:27:08 SQL Data Out: ORACLE - Column = 28, Name = 身份证号码, Type = fldZSTRING, Precision = 18, Scale = 0, Data = NULL
33040 23:27:08 SQL Data Out: ORACLE - Column = 29, Name = 上岗证, Type = fldZSTRING, Precision = 26, Scale = 0, Data = NULL
33041 23:27:08 SQL Data Out: ORACLE - Column = 31, Name = 办公电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
33042 23:27:08 SQL Prepare: ORACLE - UPDATE STAFF
SET
EMPNO = :1,
USERNAME = :2,
DUTY = :3,
PHONE_WORK = :4,
HIREDATE = :5,
SEX = :6,
ETHNOS = :7,
POLITY = :8,
ADDRESS = :9,
EMPNO_INNER = :10,
SKILL = :11,
SPECILISM = :12,
EDUCATION = :13,
PHONE_HOME = :14,
PHONE_HOME1 = :15,
PHONE_HOME2 = :16,
PHONE_MOBILE = :17,
PHONE_MOBILE1 = :18,
PHONE_MOBILE2 = :19,
PHONE_MOBILE3 = :20,
FAX = :21,
E_MAIL = :22,
ZIPCODE = :23,
BIRTHDAY = :24,
BIRTHADDRESS = :25,
MARRIED = :26,
PERSONHISTORY = :27,
PERSONID = :28,
DUTYCERFI = :29,
DEPARTMENTID = :30,
PHOTOES = :31

WHERE
EMPNO = :32
33043 23:27:08 SQL Data In: ORACLE - Param = 1, Name = , Type = fldZSTRING, Precision = 5, Scale = 0, Data = 00395
33044 23:27:08 SQL Data In: ORACLE - Param = 2, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 黄明
33045 23:27:08 SQL Data In: ORACLE - Param = 3, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 教师
33046 23:27:08 SQL Data In: ORACLE - Param = 4, Name = , Type = fldZSTRING, Precision = 7, Scale = 0, Data = 2622003
33047 23:27:08 SQL Data In: ORACLE - Param = 5, Name = , Type = fldTIMESTAMP, Precision = 0, Scale = 0, Data = 9/5/1999 23:39:11:0
33048 23:27:08 SQL Data In: ORACLE - Param = 6, Name = , Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
33049 23:27:08 SQL Data In: ORACLE - Param = 7, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33050 23:27:08 SQL Data In: ORACLE - Param = 8, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
33051 23:27:08 SQL Data In: ORACLE - Param = 9, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33052 23:27:08 SQL Data In: ORACLE - Param = 10, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 401002
33053 23:27:08 SQL Data In: ORACLE - Param = 11, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 讲师
33054 23:27:08 SQL Data In: ORACLE - Param = 12, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data =
33055 23:27:08 SQL Data In: ORACLE - Param = 13, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 大学
33056 23:27:08 SQL Data In: ORACLE - Param = 14, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33057 23:27:08 SQL Data In: ORACLE - Param = 15, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33058 23:27:08 SQL Data In: ORACLE - Param = 16, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33059 23:27:08 SQL Data In: ORACLE - Param = 17, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33060 23:27:08 SQL Data In: ORACLE - Param = 18, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33061 23:27:08 SQL Data In: ORACLE - Param = 19, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33062 23:27:08 SQL Data In: ORACLE - Param = 20, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33063 23:27:08 SQL Data In: ORACLE - Param = 21, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33064 23:27:08 SQL Data In: ORACLE - Param = 22, Name = , Type = fldZSTRING, Precision = 17, Scale = 0, Data = jds@zhuzit.edu.cn
33065 23:27:08 SQL Data In: ORACLE - Param = 23, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 412008
33066 23:27:08 SQL Data In: ORACLE - Param = 24, Name = , Type = fldTIMESTAMP, Precision = 0, Scale = 0, Data = NULL
33067 23:27:08 SQL Data In: ORACLE - Param = 25, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 广东
33068 23:27:08 SQL Data In: ORACLE - Param = 26, Name = , Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
33069 23:27:08 SQL Data In: ORACLE - Param = 27, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33070 23:27:08 SQL Data In: ORACLE - Param = 28, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33071 23:27:08 SQL Data In: ORACLE - Param = 29, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
33072 23:27:08 SQL Data In: ORACLE - Param = 30, Name = , Type = fldZSTRING, Precision = 3, Scale = 0, Data = 401
33073 23:27:08 SQL Blob IO: ORACLE - Return blob data
33074 23:27:08 SQL Data In: ORACLE - Param = 32, Name = , Type = fldZSTRING, Precision = 5, Scale = 0, Data = 00395
33075 23:27:08 SQL Execute: ORACLE - UPDATE STAFF
SET
EMPNO = ?,
USERNAME = ?,
DUTY = ?,
PHONE_WORK = ?,
HIREDATE = ?,
SEX = ?,
ETHNOS = ?,
POLITY = ?,
ADDRESS = ?,
EMPNO_INNER = ?,
SKILL = ?,
SPECILISM = ?,
EDUCATION = ?,
PHONE_HOME = ?,
PHONE_HOME1 = ?,
PHONE_HOME2 = ?,
PHONE_MOBILE = ?,
PHONE_MOBILE1 = ?,
PHONE_MOBILE2 = ?,
PHONE_MOBILE3 = ?,
FAX = ?,
E_MAIL = ?,
ZIPCODE = ?,
BIRTHDAY = ?,
BIRTHADDRESS = ?,
MARRIED = ?,
PERSONHISTORY = ?,
PERSONID = ?,
DUTYCERFI = ?,
DEPARTMENTID = ?,
PHOTOES = ?

WHERE
EMPNO = ?
33076 23:27:09 SQL Data In: ORACLE - Rows affected = 1
33077 23:27:09 SQL Stmt: ORACLE - Reset
33078 23:27:09 SQL Transact: ORACLE - XACT Commit
33079 23:27:09 SQL Prepare: ORACLE - COMMIT WORK
33080 23:27:09 SQL Execute: ORACLE - COMMIT WORK
33081 23:27:09 SQL Stmt: ORACLE - Close
33082 23:27:09 SQL Stmt: ORACLE - Close
二、我尝试修改 王三 的 传真(222222222)、地址(湖南长沙黄兴路) 和 个人简历(1999年博士毕业) 信息后,
通过刷新发现数据丢失,sql monitor 的最后纪录 如下:
... ...
1 23:47:41 SQL Transact: ORACLE - Set autocommit on/off
2 23:47:41 SQL Prepare: ORACLE - SELECT EMPNO_INNER as "职工编号", EMPNO as "职工帐号", USERNAME as "姓名",
DEPARTMENTID as "部门编号" , HIREDATE as "上班日期", SEX as "性别",
ETHNOS as "民族", POLITY as "政治面貌",
ADDRESS as "地址", DUTY as "岗位",
SKILL as "职称", SPECILISM as "特长", EDUCATION as "学历",
PHONE_HOME as "家庭电话", PHONE_HOME1 as "家庭电话1",
PHONE_HOME2 as "家庭电话2", PHONE_MOBILE as "移动电话",
PHONE_MOBILE1 as "移动电话1", PHONE_MOBILE2 as "移动电话2",
PHONE_MOBILE3 as "移动电话3", FAX as "传真", E_MAIL as "E_MAIL",
ZIPCODE as "邮编", BIRTHDAY as "生日", BIRTHADDRESS as "出生地",
MARRIED as "婚否", PERSONHISTORY as "个人简历", PERSONID as "身份证号码",
DUTYCERFI as "上岗证", PHOTOES as "照片" , PHONE_WORK as "办公电话"
FROM STAFF Staff
3 23:47:41 SQL Execute: ORACLE - SELECT EMPNO_INNER as "职工编号", EMPNO as "职工帐号", USERNAME as "姓名",
DEPARTMENTID as "部门编号" , HIREDATE as "上班日期", SEX as "性别",
ETHNOS as "民族", POLITY as "政治面貌",
ADDRESS as "地址", DUTY as "岗位",
SKILL as "职称", SPECILISM as "特长", EDUCATION as "学历",
PHONE_HOME as "家庭电话", PHONE_HOME1 as "家庭电话1",
PHONE_HOME2 as "家庭电话2", PHONE_MOBILE as "移动电话",
PHONE_MOBILE1 as "移动电话1", PHONE_MOBILE2 as "移动电话2",
PHONE_MOBILE3 as "移动电话3", FAX as "传真", E_MAIL as "E_MAIL",
ZIPCODE as "邮编", BIRTHDAY as "生日", BIRTHADDRESS as "出生地",
MARRIED as "婚否", PERSONHISTORY as "个人简历", PERSONID as "身份证号码",
DUTYCERFI as "上岗证", PHOTOES as "照片" , PHONE_WORK as "办公电话"
FROM STAFF Staff
4 23:47:41 SQL Blob IO: ORACLE - Return blob data
5 23:47:41 SQL Stmt: ORACLE - Fetch
6 23:47:41 SQL Data Out: ORACLE - Column = 1, Name = 职工编号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 303004
7 23:47:41 SQL Data Out: ORACLE - Column = 2, Name = 职工帐号, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 00042
8 23:47:41 SQL Data Out: ORACLE - Column = 3, Name = 姓名, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 王三
9 23:47:41 SQL Data Out: ORACLE - Column = 4, Name = 部门编号, Type = fldZSTRING, Precision = 5, Scale = 0, Data = 303
10 23:47:41 SQL Data Out: ORACLE - Column = 5, Name = 上班日期, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = 1/1/1996 23:39:11:0
11 23:47:41 SQL Data Out: ORACLE - Column = 6, Name = 性别, Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
12 23:47:41 SQL Data Out: ORACLE - Column = 7, Name = 民族, Type = fldZSTRING, Precision = 10, Scale = 0, Data = NULL
13 23:47:41 SQL Data Out: ORACLE - Column = 8, Name = 政治面貌, Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
14 23:47:41 SQL Data Out: ORACLE - Column = 9, Name = 地址, Type = fldZSTRING, Precision = 40, Scale = 0, Data = NULL
15 23:47:41 SQL Data Out: ORACLE - Column = 10, Name = 岗位, Type = fldZSTRING, Precision = 20, Scale = 0, Data = 教师
16 23:47:41 SQL Data Out: ORACLE - Column = 11, Name = 职称, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 讲师
17 23:47:41 SQL Data Out: ORACLE - Column = 13, Name = 学历, Type = fldZSTRING, Precision = 10, Scale = 0, Data = 大学
18 23:47:41 SQL Data Out: ORACLE - Column = 14, Name = 家庭电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
19 23:47:41 SQL Data Out: ORACLE - Column = 15, Name = 家庭电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
20 23:47:41 SQL Data Out: ORACLE - Column = 16, Name = 家庭电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
21 23:47:41 SQL Data Out: ORACLE - Column = 17, Name = 移动电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
22 23:47:41 SQL Data Out: ORACLE - Column = 18, Name = 移动电话1, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
23 23:47:41 SQL Data Out: ORACLE - Column = 19, Name = 移动电话2, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
24 23:47:41 SQL Data Out: ORACLE - Column = 20, Name = 移动电话3, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
25 23:47:41 SQL Data Out: ORACLE - Column = 21, Name = 传真, Type = fldZSTRING, Precision = 12, Scale = 0, Data = NULL
26 23:47:41 SQL Data Out: ORACLE - Column = 22, Name = E_MAIL, Type = fldZSTRING, Precision = 20, Scale = 0, Data = wqy@163.com
27 23:47:41 SQL Data Out: ORACLE - Column = 23, Name = 邮编, Type = fldZSTRING, Precision = 8, Scale = 0, Data = 412008
28 23:47:41 SQL Data Out: ORACLE - Column = 24, Name = 生日, Type = fldTIMESTAMP, Precision = 1, Scale = 0, Data = NULL
29 23:47:41 SQL Data Out: ORACLE - Column = 25, Name = 出生地, Type = fldZSTRING, Precision = 40, Scale = 0, Data = 常德
30 23:47:41 SQL Data Out: ORACLE - Column = 26, Name = 婚否, Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
31 23:47:41 SQL Data Out: ORACLE - Column = 27, Name = 个人简历, Type = fldZSTRING, Precision = 200, Scale = 0, Data = NULL
32 23:47:41 SQL Data Out: ORACLE - Column = 28, Name = 身份证号码, Type = fldZSTRING, Precision = 18, Scale = 0, Data = NULL
33 23:47:41 SQL Data Out: ORACLE - Column = 29, Name = 上岗证, Type = fldZSTRING, Precision = 26, Scale = 0, Data = NULL
34 23:47:41 SQL Data Out: ORACLE - Column = 31, Name = 办公电话, Type = fldZSTRING, Precision = 12, Scale = 0, Data = 2622001
35 23:47:41 SQL Data In: ORACLE - Param = 1, Name = , Type = fldZSTRING, Precision = 5, Scale = 0, Data = 00042
36 23:47:41 SQL Data In: ORACLE - Param = 2, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 王三
37 23:47:41 SQL Data In: ORACLE - Param = 3, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 教师
38 23:47:41 SQL Data In: ORACLE - Param = 4, Name = , Type = fldZSTRING, Precision = 7, Scale = 0, Data = 2622001
39 23:47:41 SQL Data In: ORACLE - Param = 5, Name = , Type = fldTIMESTAMP, Precision = 0, Scale = 0, Data = 1/1/1996 23:39:11:0
40 23:47:41 SQL Data In: ORACLE - Param = 6, Name = , Type = fldZSTRING, Precision = 2, Scale = 0, Data = 男
41 23:47:41 SQL Data In: ORACLE - Param = 7, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
42 23:47:41 SQL Data In: ORACLE - Param = 8, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 群众
43 23:47:41 SQL Data In: ORACLE - Param = 9, Name = , Type = fldZSTRING, Precision = 14, Scale = 0, Data = 湖南长沙黄兴路
44 23:47:41 SQL Data In: ORACLE - Param = 10, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 303004
45 23:47:41 SQL Data In: ORACLE - Param = 11, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 讲师
46 23:47:41 SQL Data In: ORACLE - Param = 12, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data =
47 23:47:41 SQL Data In: ORACLE - Param = 13, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 大学
48 23:47:41 SQL Data In: ORACLE - Param = 14, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
49 23:47:41 SQL Data In: ORACLE - Param = 15, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
50 23:47:41 SQL Data In: ORACLE - Param = 16, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
51 23:47:41 SQL Data In: ORACLE - Param = 17, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
52 23:47:41 SQL Data In: ORACLE - Param = 18, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
53 23:47:41 SQL Data In: ORACLE - Param = 19, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
54 23:47:41 SQL Data In: ORACLE - Param = 20, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
55 23:47:41 SQL Data In: ORACLE - Param = 21, Name = , Type = fldZSTRING, Precision = 9, Scale = 0, Data = 222222222
56 23:47:41 SQL Data In: ORACLE - Param = 22, Name = , Type = fldZSTRING, Precision = 11, Scale = 0, Data = wqy@163.com
57 23:47:41 SQL Data In: ORACLE - Param = 23, Name = , Type = fldZSTRING, Precision = 6, Scale = 0, Data = 412008
58 23:47:41 SQL Data In: ORACLE - Param = 24, Name = , Type = fldTIMESTAMP, Precision = 0, Scale = 0, Data = NULL
59 23:47:41 SQL Data In: ORACLE - Param = 25, Name = , Type = fldZSTRING, Precision = 4, Scale = 0, Data = 常德
60 23:47:41 SQL Data In: ORACLE - Param = 26, Name = , Type = fldZSTRING, Precision = 1, Scale = 0, Data = T
61 23:47:41 SQL Data In: ORACLE - Param = 27, Name = , Type = fldZSTRING, Precision = 14, Scale = 0, Data = 1999年博士毕业
62 23:47:41 SQL Data In: ORACLE - Param = 28, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
63 23:47:41 SQL Data In: ORACLE - Param = 29, Name = , Type = fldZSTRING, Precision = 0, Scale = 0, Data = NULL
64 23:47:41 SQL Data In: ORACLE - Param = 30, Name = , Type = fldZSTRING, Precision = 3, Scale = 0, Data = 303
65 23:47:41 SQL Blob IO: ORACLE - Return blob data
66 23:47:41 SQL Data In: ORACLE - Param = 32, Name = , Type = fldZSTRING, Precision = 5, Scale = 0, Data = 00042
67 23:47:41 SQL Stmt: ORACLE - Reset
68 23:47:41 SQL Execute: ORACLE - UPDATE STAFF
SET
EMPNO = ?,
USERNAME = ?,
DUTY = ?,
PHONE_WORK = ?,
HIREDATE = ?,
SEX = ?,
ETHNOS = ?,
POLITY = ?,
ADDRESS = ?,
EMPNO_INNER = ?,
SKILL = ?,
SPECILISM = ?,
EDUCATION = ?,
PHONE_HOME = ?,
PHONE_HOME1 = ?,
PHONE_HOME2 = ?,
PHONE_MOBILE = ?,
PHONE_MOBILE1 = ?,
PHONE_MOBILE2 = ?,
PHONE_MOBILE3 = ?,
FAX = ?,
E_MAIL = ?,
ZIPCODE = ?,
BIRTHDAY = ?,
BIRTHADDRESS = ?,
MARRIED = ?,
PERSONHISTORY = ?,
PERSONID = ?,
DUTYCERFI = ?,
DEPARTMENTID = ?,
PHOTOES = ?

WHERE
EMPNO = ?
69 23:47:41 SQL Data In: ORACLE - Rows affected = 1
70 23:47:42 SQL Stmt: ORACLE - Reset
71 23:47:42 SQL Transact: ORACLE - XACT Commit
72 23:47:42 SQL Prepare: ORACLE - COMMIT WORK
73 23:47:42 SQL Execute: ORACLE - COMMIT WORK
74 23:47:42 SQL Stmt: ORACLE - Close
75 23:47:42 SQL Stmt: ORACLE - Close
比较长,辛苦大家察看了,这都是一些修改纪录的sql语句纪录,我看了很久也没看出问题来,高手们救救我!!
 
大家 给点建议吧!
 
我刚才又做了一个试验:我修改了 个人简历 字段,然后提交数据库,可以看到 datasource 显示 工作
状态从edit 变回了 browse .然后我再次修改 个人简历 字段,提交数据库时 系统提示:别的用户
修改了该字段信息,不能再修改。
那么我能不能认为 这个问题一定发生在应用服务器与数据库之间?
象这种问题该如何解决?
 
最后问一下:
1、在什么情况下应该使用datamoudle.database1.commit,是不是我在bde里面写了
autocommit就不用了
2、在每个query的afterpost里面写上:
try
applyupdate(-1)
except
showmessage(
能不能捕获错误?
大家说几句,帮帮我吗?:)
 
给点提示吧?!!
 
基本解决了
 
后退
顶部