在oracle中创建一个blob的大对象,可用SQL查询时提示数据类型不被支持,为什么?该怎么解决
在oracle中创建一个blob的大对象,可用SQL查询时提示数据类型不被支持,为什么?
怎么做才行呢?
------解决方案--------------------
我是用InterBase的,那里面用Blob很正常,效率也很高。
最近也在研究Oracle10G和Sql Server2005,不过刚入门,没做过太多实验。
------解决方案--------------------
用oracle自己的那个provider,即Oracle Provider for OLE DB。
Microsoft OLE DB Provider for Oracle印象中不好使。
------解决方案--------------------
给个例子:
create table XXX ( testfield1 long raw)
------解决方案--------------------
使用ado连接数据库,在build连接字符串时选择Oracle Provider for OLE DB,程序中其他部分均无须修改.
------解决方案--------------------
--create table
create table photo( id int ,photo1 blob );
/
--插入图片
....
--adoconnection connectionstring
Provider=OraOLEDB.Oracle.1;Password=mypassword;Persist Security Info=True;User ID=myuser;Data Source=orcl '
--
procedure TForm1.cmdReadClick(Sender: TObject);
begin
self.ADODataSet1.Close;
self.ADODataSet1.CommandText:= 'select * from photo t ';
self.ADODataSet1.Open;
TBlobField(self.ADODataSet1.FieldByName( 'photo1 ' )).SaveToFile( 'c:\3.jpg ' );
end;
------解决方案--------------------
用ODAC试试。
blob的大对象好像是Oracle9i以前的数据类型。Microsoft OLE DB Provider for Oracle连接不是很好,好像是需要使用中间变量进行保存,不能直接显示。
------解决方案--------------------
把options的net 设置为true
然后照着配置就可以了
------解决方案--------------------
用ODAC控件组,专门操作oracle的,使用方法和ADO一样,而且不用装oracle的客户端
怎么做才行呢?
------解决方案--------------------
我是用InterBase的,那里面用Blob很正常,效率也很高。
最近也在研究Oracle10G和Sql Server2005,不过刚入门,没做过太多实验。
------解决方案--------------------
用oracle自己的那个provider,即Oracle Provider for OLE DB。
Microsoft OLE DB Provider for Oracle印象中不好使。
------解决方案--------------------
给个例子:
create table XXX ( testfield1 long raw)
------解决方案--------------------
使用ado连接数据库,在build连接字符串时选择Oracle Provider for OLE DB,程序中其他部分均无须修改.
------解决方案--------------------
--create table
create table photo( id int ,photo1 blob );
/
--插入图片
....
--adoconnection connectionstring
Provider=OraOLEDB.Oracle.1;Password=mypassword;Persist Security Info=True;User ID=myuser;Data Source=orcl '
--
procedure TForm1.cmdReadClick(Sender: TObject);
begin
self.ADODataSet1.Close;
self.ADODataSet1.CommandText:= 'select * from photo t ';
self.ADODataSet1.Open;
TBlobField(self.ADODataSet1.FieldByName( 'photo1 ' )).SaveToFile( 'c:\3.jpg ' );
end;
------解决方案--------------------
用ODAC试试。
blob的大对象好像是Oracle9i以前的数据类型。Microsoft OLE DB Provider for Oracle连接不是很好,好像是需要使用中间变量进行保存,不能直接显示。
------解决方案--------------------
把options的net 设置为true
然后照着配置就可以了
------解决方案--------------------
用ODAC控件组,专门操作oracle的,使用方法和ADO一样,而且不用装oracle的客户端