CHEBURASHKA
CHEBURASHKA

Reputation: 1713

SAS. How to overcome cell storage limit issue?

I have a problem. I am pulling data from Teradata Database directly into SAS. The data looks like this:

id fragmentId   fragment
1     34       (some text)
2     67       (some text)
3     89       (some text) 
.......

The problem is that the fragment field contains text of 10 pages and even more (30,000,000 characters). Thus in SAS I get the column truncated and loose data. How can I increase the limit for a SAS column that would contain text?

(PS: I have looked up dbmax_text option as @Joe suggested. However, it appears that this option applies to any dbms except teradata). How can i code it?

Upvotes: 1

Views: 439

Answers (1)

Joe
Joe

Reputation: 63424

Teradata indeed does not support DBMAX_TEXT. It also does not seem to support character sizes nearly as high as you list; the doc page for teradata lists a maximum of 64,000 bytes; and further, SAS is only able to hold a maximum of 32767 characters in one column.

In your case, you may want to consider splitting the column in-database into 32767 byte chunks (or whatever makes logical sense for your needs). Do that in passthrough in a view, and then read the data in from that view.

-- Previous information (helpful for other DBMSs other than Teradata, not helpful here) --

Odds are you need to change the dbmax_text option to something larger - it tends to default to 1024.

You can change it in the pull (the data step or sql query) as a dataset option, or change it in the database libname statement.

See the documentation page for more information.

Upvotes: 1

Related Questions