[PHP/ODBC/SQL2005] SQL TEXT veld lezen probleem *

Pagina: 1
Acties:

Onderwerpen


Verwijderd

Topicstarter
Vanuit PHP op een linux server probeer ik via ODBC data te lezen vanuit een SQL2005 server.
Dit werkt goed, totdat ik met mijn query een type TEXT veld vanuit de database wil lezen.
Dan krijg ik helemaal geen output meer, zelfs geen error.

Ik merk in google dat dit een veel voorkomend probleem is.

Ik heb vele mogelijke oplossingen gelezen:
zoals:
in php.ini de odbc.defaultlrl verhogen naar bijvoorbeeld:
odbc.defaultlrl=65536
Of eerst met SQL aangeven dat je kleine blokjes data terugwil:
SQL: SET TEXTSIZE 65536;
In het FreeTDS configuratie /etc/freetds/freetds.conf bestand aangeven:
text size = 65536


Via de DSN in /etc/odbc.ini maak ik de connectie met de database:
[SQL2005SERVER]
Driver = /usr/lib/libtdsodbc.so
Server = 192.168.1.10
Database = 100
Port = 1433
TDS_Version = 7.0


Volgens mij is de oorzaak van het probleem dat SQL server maximaal 2GB ruimte geeft een TEXT veld. En PHP denkt dat hij een variabele mvan 2GB moet aanmaken.
Het probleem kan ik omzeilen door de query aan te passen en het TEXT field te converteren.

SQL: SELECT id, title, CONVERT(CHAR(2048),description) AS description FROM pages;

Maar vanuit een ander veld wil ik graag een afbeelding lezen die in de database zit.
Met deze bovenstaande methode kan ik dat niet voor elkaar krijgen.


Heeft iemand een idee hoe ik TEXT velden vanuit een SQL 2005 server via ODBC in PHP krijg?

  • whoami
  • Registratie: December 2000
  • Nu online
Heb je het al eens geprobeerd met de READTEXT functie van SQL Server ?

https://fgheysels.github.io/