我用utl_tcp往用socket写的接收程序打开的监听端口中写数据,为什么只能一次呢?
我的oracle代码如下:
CREATE OR REPLACE PROCEDURE TEST_UTL_TCP
IS
C UTL_TCP.CONNECTION;
AA NUMBER;
CC BINARY_INTEGER;
V_STR VARCHAR2 (4000);
V_RESULT VARCHAR2 (100);
BEGIN
C := UTL_TCP.OPEN_CONNECTION ('127.0.0.1', 20001);
AA := UTL_TCP.AVAILABLE (C);
UTL_TCP.FLUSH (C);
CC := UTL_TCP.WRITE_LINE (C, 'afdfd');
UTL_TCP.FLUSH (C);
UTL_TCP.CLOSE_CONNECTION (C);
-- V_RESULT := UTL_TCP.GET_LINE (C, TRUE);
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
请高手指点!
我的oracle代码如下:
CREATE OR REPLACE PROCEDURE TEST_UTL_TCP
IS
C UTL_TCP.CONNECTION;
AA NUMBER;
CC BINARY_INTEGER;
V_STR VARCHAR2 (4000);
V_RESULT VARCHAR2 (100);
BEGIN
C := UTL_TCP.OPEN_CONNECTION ('127.0.0.1', 20001);
AA := UTL_TCP.AVAILABLE (C);
UTL_TCP.FLUSH (C);
CC := UTL_TCP.WRITE_LINE (C, 'afdfd');
UTL_TCP.FLUSH (C);
UTL_TCP.CLOSE_CONNECTION (C);
-- V_RESULT := UTL_TCP.GET_LINE (C, TRUE);
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
请高手指点!
CREATE OR REPLACE PROCEDURE TEST_UTL_TCP
IS
C UTL_TCP.CONNECTION;
AA NUMBER;
CC BINARY_INTEGER;
V_STR VARCHAR2 (4000);
V_RESULT VARCHAR2 (100);
BEGIN
C := UTL_TCP.OPEN_CONNECTION ('172.16.55.8', 20001);
AA := UTL_TCP.AVAILABLE (C);
UTL_TCP.FLUSH (C);
CC := UTL_TCP.WRITE_LINE (C, '123456');
UTL_TCP.FLUSH (C);
UTL_TCP.CLOSE_CONNECTION (C);
-- V_RESULT := UTL_TCP.GET_LINE (C, TRUE);
EXCEPTION
WHEN OTHERS
THEN
UTL_TCP.CLOSE_CONNECTION (C);
END;
/