[vienna.pm] CLOB-Felder bei Oracle

Peter J. Holzer hjp at wsr.ac.at
Wed Feb 13 08:39:32 CST 2002


On 2002-02-13 15:23:07 +0100, Klaus-M. Schremser [Gentics Net.Solutions] wrote:
> Habe ein Perl-Script mit DBI/DBD zu Oracle. In der DB ist eine Tabelle
> mit einem CLOB-Feld. Leider bin ich kein Oracle-Spezialist, drum bitte ich
> um Eure Hilfe.
> 
> Meine Funktion liegt mir das Feld text(CLOB) aus, aber ich bekomme nicht aus
> allen Feldern
> Werte zurück.

Laß mich raten: Du bekommst genau aus jenen Feldern keine Werte zurück,
die länger als $sth->{LongReadLen} sind? Setz das auf einen größeren
Wert, oder - wenn Du mit abgeschnittenen Werten leben kannst - setz
$sth->{LongTruncOk} auf 1. 

Siehe auch perldoc DBD::Oracle, Section "Handling LOBs".

Noch ein paar Anmerkungen:

> sub get_kennung {
>         my @inp = @_;
> 
>         my $dbh2 = $inp[0];
>         my $langu = $inp[1];
>         my $kennung = $inp[2];

Was spricht gegen:

	my ($dbh2, $langu, $kennung) = @_;

Ist imho kürzer und leserlicher.


>                 $sql = "SELECT text FROM einstellungen WHERE kennung =
> \'$kennung\' AND sprache = $langu";

Und wenn ich als kennung "O'Hara" übergebe, produziert das einen
Syntax-Fehler. Besser:

	$sql = "SELECT text FROM einstellungen
	        WHERE kennung=? AND sprache=?";

und dann $sth->execute($kennung, $langu).

[31 Zeilen Signature gelöscht - Ich bin dafür, Firmen, die Ihren
Mitarbeitern solche Signatures aufs Aug drücken, mit Internetverbot
nicht unter 5 Jahren zu bestrafen. Im Wiederholungsfall Umstellung des
gesamten Schriftverkehrs auf Gänsekielfedern]

	hp

-- 
   _  | Peter J. Holzer      | My definition of a stupid question is
|_|_) | Sysadmin WSR / LUGA  | "a question that if you're embarassed to
| |   | hjp at wsr.ac.at        | ask it, you stay stupid."
__/   | http://www.hjp.at/   |    -- Tim Helck on dbi-users, 2001-07-30
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 431 bytes
Desc: not available
Url : http://mail.pm.org/archives/vienna-pm/attachments/20020213/9944e3f3/attachment.bin


More information about the Vienna-pm mailing list