oracle - don't transfer blobs
I've noticed that in开发者_Go百科 "SQL Developer" if you are selecting from a table that contains BLOBs, it uses the word "(BLOB)" instead of displaying / downloading the BLOB contents.
Is this something that can be done at a session level?
I have a .net program that does "select * from TABLE_WITH_BLOB" which returns the contents of the BLOB. I cannot change the program from selecting all columns, so the next best thing is to tell .net or the session to not transfer BLOBs. Anyone know a way of doing this?
No, SQL Developer is presumably building and running a dynamic select statement by inspecting the table definition, and for BLOB columns it simply substitutes the literal '(BLOB)' something like this:
v_sql := 'SELECT col1, col2, col3, ''(BLOB)'' as blob_col FROM mytable';
Your .net program would have to do something similar to avoid receiving the BLOB data.
One way would be to create a seperate child table for these blobs and use views with/without joined blobs as appropriate.
精彩评论