当前位置: 代码迷 >> PB >> 小問題 請指導.解决方法
  详细解决方案

小問題 請指導.解决方法

热度:591   发布时间:2016-04-29 08:27:13.0
小問題 請指導....
1. 在 DW 動態建立一張圖片...請問語法那有錯??? 能不能解譯明白一點 ...
dw_1.Modify( "create bitmap(band=Header pointer='Arrow!' moveable='0' resizeable='0' x='100' y='100' height='300' width='300' filename='C:\Documents and Settings\CQ35\test.jpg' invert='0' name='p_test' tag=''")

2.commit; 會把之前所有對資料庫的動作提交 如果只想對目前動作提交 而不提交之前的動作 該如何作
  dw_1.update()
  dw_2.update()
  commit;
  以上例子會對 dw_1 & dw_2 都產生作用
  如果這時 我只想對dw_2 commit; 而不提交dw_1 語法該如何寫???

3. INSERT INTO ustomer VALUES ( '001' , 'fang47')using slqca;
  以上語法 當資料庫中沒有重覆值時 會成功...
  如果 我想使以上語法當...
  沒有重覆值時 INSERT 有重覆值時 UPDATE
  請問語法該如何寫....

 小弟自學PB 基礎關念不是很好 希望高手能多多指導 感激不進...

------解决方案--------------------
1. 在 DW 動態建立一張圖片...請問語法那有錯??? 能不能解譯明白一點 ...
dw_1.Modify( "create bitmap(band=Header pointer='Arrow!' moveable='0' resizeable='0' x='100' y='100' height='300' width='300' filename='C:\Documents and Settings\CQ35\test.jpg' invert='0' name='p_test' tag=''")
答:表达式中少一个括号,试试
dw_1.Modify( "create bitmap(band=Header pointer='Arrow!' moveable='0' resizeable='0' x='100' y='100' height='300' width='300' filename='C:\Documents and Settings\CQ35\test.jpg' invert='0' name='p_test' tag='')")


2.commit; 會把之前所有對資料庫的動作提交 如果只想對目前動作提交 而不提交之前的動作 該如何作
dw_1.update()
dw_2.update()
commit;
以上例子會對 dw_1 & dw_2 都產生作用
如果這時 我只想對dw_2 commit; 而不提交dw_1 語法該如何寫???
答:需要用到两个事务才能实现,把dw_1设置为另一个事务

3. INSERT INTO ustomer VALUES ( '001' , 'fang47')using slqca;
以上語法 當資料庫中沒有重覆值時 會成功...
如果 我想使以上語法當...
沒有重覆值時 INSERT 有重覆值時 UPDATE
請問語法該如何寫....
答:需要先用select count(1) into :ll_cnt from ustomer where 条件
然后判断ll_cnt > 0,如果有重复值就用update,否则就用insert

还有,建议不要用insert into ustomer values ....这样的sql,
最好在表名后加上列名
insert into ustomer (列名) values ....
否则当表上增加个字段时,这样的insert就会失败
  相关解决方案