SQL语句总是异常,太杯具了
Insert into T_BD_GROUPHEADER问题在哪? SQL select 异常
(GH_ID,
GH_Name,
GH_TYPE,
GH_LOGO,
GH_SUMMARY,
GH_NOTICE_RTF,
GH_OP_ID_CREATOR,
GH_CREATOR_NAME)
Values
(SEQ_QQGROUP_ID.Nextval,
'江正(1001286) 创建的讨论组',
'2',
NULL,
'江正(1001286) 创建于 21月-01日',
NULL,
'828',
'江正');
DECLARE
V_SEQID NUMBER;
BEGIN
SELECT SEQ_QQGROUP_ID.CURRVAL INTO V_SEQID FROM dual;
END;
INSERT INTO T_BD_GROUPLINE
(OP_ID, GH_ID, GL_OP_ALIAS)
Select '828', V_SEQID, '江正(1001286)'
FROM DUAL
UNION
Select '1474', SEQ_QQGROUP_ID.CURRVAL, '陈维(1002392)'
FROM DUAL
UNION
Select '466', SEQ_QQGROUP_ID.CURRVAL, '冯敏(1000609)'
FROM DUAL
UNION
Select '1000', SEQ_QQGROUP_ID.CURRVAL, '郭珊珊(1001705)'
FROM DUAL
UNION
Select '103', SEQ_QQGROUP_ID.CURRVAL, '齐湘波(1000119)'
FROM DUAL
UNION
Select '13', SEQ_QQGROUP_ID.CURRVAL, '张莉(1000013)' FROM DUAL
[解决办法]
路过 刚开始学
[解决办法]
DECLARE
V_SEQID NUMBER;
BEGIN
SELECT SEQ_QQGROUP_ID.CURRVAL INTO V_SEQID FROM dual;
INSERT INTO T_BD_GROUPLINE
(OP_ID, GH_ID, GL_OP_ALIAS)
Select '828', V_SEQID, '江正(1001286)'
FROM DUAL
UNION
Select '1474', V_SEQID, '陈维(1002392)'
FROM DUAL
UNION
Select '466', V_SEQID, '冯敏(1000609)'
FROM DUAL
UNION
Select '1000', V_SEQID, '郭珊珊(1001705)'
FROM DUAL
UNION
Select '103', V_SEQID, '齐湘波(1000119)'
FROM DUAL
UNION
Select '13', V_SEQID, '张莉(1000013)' FROM DUAL;
END;
[解决办法]
declare
begin
end;
这是一个匿名块,块结束后,declare之后的变量也释放了,你想用变量,在sqlplus里用var指令
[解决办法]
DECLARE
V_SEQID NUMBER;
BEGIN
Insert into T_BD_GROUPHEADER
(GH_ID,
GH_Name,
GH_TYPE,
GH_LOGO,
GH_SUMMARY,
GH_NOTICE_RTF,
GH_OP_ID_CREATOR,
GH_CREATOR_NAME);
Values
(SEQ_QQGROUP_ID.Nextval,
'江正(1001286) 创建的讨论组',
'2',
NULL,
'江正(1001286) 创建于 21月-01日',
NULL,
'828',
'江正');
SELECT SEQ_QQGROUP_ID.CURRVAL INTO V_SEQID FROM dual;
INSERT INTO T_BD_GROUPLINE
(OP_ID, GH_ID, GL_OP_ALIAS)
Select '828', V_SEQID, '江正(1001286)'
FROM DUAL
UNION
Select '1474', V_SEQID, '陈维(1002392)'
FROM DUAL
UNION
Select '466', V_SEQID, '冯敏(1000609)'
FROM DUAL
UNION
Select '1000', V_SEQID, '郭珊珊(1001705)'
FROM DUAL
UNION
Select '103', V_SEQID, '齐湘波(1000119)'
FROM DUAL
UNION
Select '13', V_SEQID, '张莉(1000013)' FROM DUAL;
commit;
end;
建议你看看plsql的语法。
[解决办法]
/* Formatted on 2013/08/02 14:39 (Formatter Plus v4.8.7) */
DECLARE
v_seqid NUMBER;
BEGIN
SELECT seq_qqgroup_id.NEXTVAL
INTO v_seqid
FROM DUAL;
INSERT INTO t_bd_groupheader
(gh_id, gh_name, gh_type, gh_logo,
gh_summary, gh_notice_rtf, gh_op_id_creator, gh_creator_name
)
VALUES (v_seqid, '江正(1001286) 创建的讨论组', '2', NULL,
'江正(1001286) 创建于 21月-01日', NULL, '828', '江正'
);
INSERT INTO t_bd_groupline
(op_id, gh_id, gl_op_alias)
SELECT '828', v_seqid, '江正(1001286)'
FROM DUAL
UNION
SELECT '1474', v_seqid, '陈维(1002392)'
FROM DUAL
UNION
SELECT '466', v_seqid, '冯敏(1000609)'
FROM DUAL
UNION
SELECT '1000', v_seqid, '郭珊珊(1001705)'
FROM DUAL
UNION
SELECT '103', v_seqid, '齐湘波(1000119)'
FROM DUAL
UNION
SELECT '13', v_seqid, '张莉(1000013)'
FROM DUAL;
COMMIT;
END;
写成这样就可以了,我检查了,你写得有错误:
1. INSERT INTO t_bd_groupheader() ..这里多了个分号.
2. 另外帮你调整了一下逻辑。
[解决办法]
把表结构和序列语句发出看看
[解决办法]
t_bd_groupline 表结构中,是不是有数值型INSERT 是字符型!
[解决办法]
结帖散分