blob类型好像不能直接这样操作。我做过一个系统用blob类型,怎么插入都不行,由于时间太紧我就改为了long raw类型了。在delphi中可以这样插入:
ADOStoredProc1.Parameters[0].Value:=1;
ADOStoredProc1.Parameters[1].LoadFromFile
('L:\PicMgr\Pic\convert1.bmp',ftBlob);
ADOStoredProc1.Prepared;
ADOStoredProc1.ExecProc;
我用的是存储过程。
ADOStoredProc1.Parameters[0].Value:=1;
ADOStoredProc1.Parameters[1].LoadFromFile
('L:\PicMgr\Pic\convert1.bmp',ftBlob);
ADOStoredProc1.Prepared;
ADOStoredProc1.ExecProc;
我用的是存储过程。
解决方案 »
- SqlServer2005同步数据至oracle9i,如何看懂这样的乱码错误提示?
- 手动创建数据库的问题??
- drop表空间问题
- Oracle系統時間的問題
- 眼毒的高手帮忙找找问题所在
- occi如何以sys用户建立到数据库的连接呢
- Oracle中视频文件存成什么格式?
- 关于数据库启动的问题越来越晕!急急急急急
- 关于这个连表的查询的sql语句怎么写??紧急!!!
- 很急!!!!保存时,提示我 with grant option where子句有问题。怎么回事呀?with grant option 在近义词中代表什么?
- oracle8i是哪个版本?我用的是orcale8.05,听说还有8.15,8.16,8.17,那么8i是哪个版本,什么意思?
- 如果对一个占用表空间很大的表增加字段有可能造成这张表的数据丢失吗?应该如何防范这种情况?
你需要给BDE打一个补丁。
try
{
MailContentStream=new TStringStream(文件路径);
}
catch(...)
{
SendMessage(hSendMail,WM_MAILSENDFAILURE,NULL,NULL);
ExitThread(EXIT_FAILURE);
}
sSQL=Format("INSERT INTO MAILARCHIVES ("
"MAILNUMBER,"
"SENDER,"
"RECEIVERLIST,"
"SUBJECT,"
"SENDDATE,"
"REPLY,"
"ALTERNATION,"
"SECRETLEVEL,"
"GETITOVER,"
"MAILTYPE,"
"MAILCONTENT) "
"VALUES("
"%d,"
"'%s',"
"'%s',"
"'%s',"
"%s,"
"%d,"
"%d,"
"%d,"
"%d,"
"%d,"
":sMsgContent)",
OPENARRAY(TVarRec,(
iMailSequenceNumber, //邮件号
sFromName, //发送人
sToName, //接受人
"", //发送主题,默认为空
"TO_DATE('"+RDate.FormatString("yyyy-mm-dd")+"','yyyy-mm-dd')", //发送时间
0, //是否回复,默认为0
0, //是否浏览,默认为0
-1*iSumofReceiver,
0, //密级,默认为0
0 //邮件类型,默认为0
)));
ESDataModule->ADOQuery->Close();
ESDataModule->ADOQuery->SQL->Clear();
ESDataModule->ADOQuery->SQL->Add(sSQL);
ESDataModule->ADOQuery->Parameters->ParamByName("sMsgContent")->LoadFromStream(MailContentStream,ftBlob);
ESDataModule->ADOQuery->ExecSQL();