我目前正在努力将值插入到Oracle数据库的varchar2列中。值是(并且特殊字符......):
with Ada.Streams;
with Ada.Text_IO;
with GNAT.Sockets;
procedure UDP_Server is
use GNAT.Sockets;
Server : Socket_Type;
Address, From : Sock_Addr_Type;
Data : Ada.Streams.Stream_Element_Array (1 .. 512);
Last : Ada.Streams.Stream_Element_Offset;
Watchdog : Natural := 0;
begin
Create_Socket (Server, Family_Inet, Socket_Datagram);
Set_Socket_Option
(Server,
Socket_Level,
(Reuse_Address, True));
Set_Socket_Option
(Server,
Socket_Level,
(Receive_Timeout,
Timeout => 1.0));
Address.Addr := Any_Inet_Addr;
Address.Port := 50001;
Bind_Socket (Server, Address);
loop
begin
GNAT.Sockets.Receive_Socket (Server, Data, Last, From);
Ada.Text_IO.Put_Line ("last : " & Last'Img);
Ada.Text_IO.Put_Line ("from : " & Image (From.Addr));
exception
when Socket_Error =>
Watchdog := Watchdog + 1;
exit when Watchdog = 10;
end;
end loop;
end UDP_Server;
(它是一个QlikView Formular,它应该存储在数据库中。之后我可以用QlikView提取和评估它,但我需要确切的给定格式。)
我已经试图逃避所有'与'等等,但到目前为止它还没有奏效。定义也没有工作。
我还发现: Pulse-density modulation 但没有在那里找到解决方案。
希望有人遇到同样的问题或知道解决方案。
提前致谢!
答案 0 :(得分:1)
也许你可以试试q quote operator:
insert into yourTable(c)
values ( q'['Data\QVD\QVD_'& replace(v_sc_val_ExecutionEnvironment, chr(39),'') &'\VTB_MOD1_RESULT\']').
这样你就不需要转义了,文本应该在输入时完全插入。