04.09.2006 12:38
OlegON
 
Код:
create or replace and compile java source named send as
import java.io.*;
public class NetSend
{
public static void Send(String Name, String Text)
{
try
{
Runtime rt = Runtime.getRuntime();
String[] go = new String[]{"C:\\WINDOWS\\system32\\net.exe","send",Name,Text};
Process proc = rt.exec(go);
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
int exitVal = proc.waitFor();
System.out.println("Net exec: " + exitVal);
} catch (Throwable t)
{
t.printStackTrace();
}
}
}
-----------------------------------
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
PL/SQL Release 9.2.0.1.0 - Production
CORE 9.2.0.1.0 Production

TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
NLSRTL Version 9.2.0.1.0 - Production

SQL>
SQL> exec dbms_java.grant_permission( 'SERJB', 'SYS:java.io.FilePermission', 'C:\WINDOWS\system32\net.exe', 'execute' )

PL/SQL procedure successfully completed

SQL> /

PL/SQL procedure successfully completed

SQL> drop table ttest;

Table dropped

SQL> create table ttest (id number, val varchar2(30))
2 /

Table created

SQL> create or replace procedure netsend(p_name varchar2,p_text varchar2)
2 as language java
3 name 'NetSend.Send(java.lang.String,java.lang.String)';
4 /

Procedure created

SQL> create or replace trigger tr_ttest_i
2 after insert on ttest
3 begin
4 netsend('172.16.17.64','Вставка!');
5 end;
6 /

Trigger created

SQL> insert into ttest values (1,'one')
2 /
04.09.2006 13:16
kadr
 
тока наверно надо установить сначала в БД JavaMashine
Часовой пояс GMT +3, время: 12:40.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.