Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Warning: mssql

Mitglied: ottscho

ottscho (Level 2) - Jetzt verbinden

15.09.2005, aktualisiert 20.09.2005, 12213 Aufrufe, 15 Kommentare

Hallo zusammen,
ich habe für testzwecke einen ms sql 2000 server. nun mache ich eine abfrage über php mit folgendem code:

[code]
$verbindung = mssql_connect("sqltestserver","sa","millch") or die
("Keine Verbindung moeglich");
mssql_select_db("ida_test_kunden") or die
("Die Datenbank existiert nicht");



$sql = 'SELECT * FROM kunden WHERE KDNR1 = 01279';
$ergebnis = mssql_query($sql);
while($row = mssql_fetch_object($ergebnis))
{
$kdnr1 = $row->KDNR1;
$name1 = $row->NAME1;
$name2 = $row->NAME2;
$strasse = $row->STRASSE;
$plz = $row->PLZ;
$ort = $row->ORT;
}
[/code]

leider bekomme ich eine fehlermeldung, aus welcher ich nicht schlau werde:

Warning: mssql_query() [function.mssql-query]: message: Unicode-Daten in einer Nur-Unicode-Sortierung oder ntext-Daten können nicht an Clients gesendet werden, die DB-Library (z.B. isql) oder ODBC, Version 3.7 oder früher, verwenden. (severity 16) in C:\xampp\htdocs\Auftrag\db_connect_test.php on line 10

kann mir bitte jmd weiterhelfen?

Gruß ottscho
Mitglied: 16640
16.09.2005 um 11:00 Uhr
Hol' Dir mal von Microsoft die aktuellen Data Access Components. Geh' dort ins Downloadcenter und suche nach MDAC_TYP. Installier das Package auf dem Client, von dem Du die Abfrage machst. Sollte danach funktionieren.
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 08:17 Uhr
Danke für den Tipp.
Ich hab versucht es zu installieren. Aber es kommt die meldung:
MDAC 2.8 RTM ist mit dieser Version von Windows nicht kompatibel. Alle Funktionen sind zurzeit Teil von Windows.

was nun?
Bitte warten ..
Mitglied: 16640
19.09.2005 um 08:45 Uhr
Auf was für einem Windows wolltest Du das denn installieren?

Nebenbei: Dein SQL-Statement an sich funktioniert und liefert das von Dir erwartete Ergebnis? Hast Du es mal im Query Analyzer ausgeführt? Was hat das Feld KDNR1 für einen Datentyp? Hintergrund dieser Fragen: Du fragst da ein Feld KDNR1 auf einen numerischen Wert 01279 ab, wobei da die führende Null überhaupt keinen Sinn macht.

dba
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 09:07 Uhr
das feld KDNR1 hat den datentyp NVARCHAR.
wenn ich die selectanweisung SELECT * FROM kunden WHERE KDNR1 = 01279;
im sql query mache, funktionert die abfrage ohne probleme. das problem liegt an der php 5.0.5 version. die hat probleme mit dem unicode. ich hab auch schon herausgefunden, dass die neue betaversion 5.1 eine erweiterng hat ( PDO (PHP Data Objects) - A new native database abstraction layer providing performance, ease-of-use, and flexibility.), aber es ist halt nur die beta version. aber was mache ich jetzt nur?
Bitte warten ..
Mitglied: 16640
19.09.2005 um 09:49 Uhr
Ändere mal den Abfragestring so ab, dass der Vergleichswert in einfachen Anführungszeichen steht. Außerdem setzt Du noch ein Unicode-kennzeichnung davor. Dein Stringinhalt muss also so aussehen:

SELECT * FROM kunden WHERE KDNR1 = N'01279'

Vielleicht hilft das in Deinem speziellen Fall weiter.
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 10:23 Uhr
leider nicht! bekomme immer noch diese meldung:
Warning: mssql_query() [function.mssql-query]: message: Unicode-Daten in einer Nur-Unicode-Sortierung oder ntext-Daten können nicht an Clients gesendet werden, die DB-Library (z.B. isql) oder ODBC, Version 3.7 oder früher, verwenden. (severity 16) in C:\xampp\htdocs\Auftrag\db_connect_test.php on line 8

die abfrage hab ich nun so gemacht, wie du wolltest:

$sql = "SELECT * FROM kunden WHERE KDNR1 = N'$kdnr' ";

ich komme echt nicht mehr weiter ...
Bitte warten ..
Mitglied: 16640
19.09.2005 um 10:27 Uhr
Datentyp ändern - zumindest mal testweise - oder muss die Kundennummer zwingend unicodefähig sein? Kannst Du am einfachsten mit dem Enterprisemanager machen.

Mit allem, was Richtung PHP geht, bin ich nicht der richtige, das geht an meinem Gebiet weit vorbei.
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 10:37 Uhr
naja, datentyp ändern ist fast ausgeschlossen.
es handelt sich wie gesagt um die db unseres warenwirschaftssystems. und da will ich den datentyp nicht ändern. aber ich danke dir herzlich für deine mühen.

kennst sich hier jmd mit php aus? bzw. mit der installation von php?
Bitte warten ..
Mitglied: 16640
19.09.2005 um 10:39 Uhr
Wenn man Daten nicht ändern kann, hilft es, eine View zu definieren und die Spalte dann mit einem convert zu füllen. Du läßt dann deine Scripte auf die View zugreifen und kannst so einen Workaround schaffen.
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 12:56 Uhr
sry, hab kein wort verstanden *g*
hast du vllt ein beispiel?
Bitte warten ..
Mitglied: 16640
19.09.2005 um 13:28 Uhr
<font class=code>
create view v_test
as
select
feld1 as f1,
feld2 as f2,
convert(varchar(30), KDNR1) as f3
... weitere Felder
from Tabellenname
</font>
Danach hast Du dann eine View auf dem SQL-Server, auf die Du wie auf eine Tabelle zugreifen kannst. Du hast aber nun KDNR1 von einem Unicode-Feld in ein normales VARCHAR konvertiert.

Eine View verändert nichts an den originalen Tabellen, sonder ermöglicht lediglich eine andere Sicht auf die Daten. Man setzt das oft auch im Rechtemanagement ein. Ich kenne Unternehmen, bei denen es untersagt ist, direkt auf Tabellen zuzugreifen. In den Tabellen sind die Daten in kompletter ausbaustufe enthalten.

Beispiel: Personaldaten bestehen aus Adresse und Gehaltsinformationen. Es existieren nun unterschiedliche Views, nämlich welche, die sämtliche Daten beinhalten, aber auch andere, die die Gehaltsdaten gar nicht führen. Der normale Anwender bekommt nur die Berechtigung für die View, die keine Gehaltsdaten enthält. So kannst Du gewährleisten, dass niemand an die Gehaltsinformationen kommt, weil sie gar nicht in der View enthalten sind.

Soll als grobe Erklärung erstmal reichen. Auf jeden Fall müsstest Du damit Dein Problem so lange umschiffen können, bis Du ein Update erhalten hast.
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 16:15 Uhr
danke, ich werde es morgen gleich testen und berichten wie es klappt.
doch gut, dass man sich hier im forum auf gute mithilfe andere verlassen kann.
*daumen hoch*

gruß ottscho
Bitte warten ..
Mitglied: ottscho
19.09.2005 um 16:57 Uhr
so, hab es nun ausprobiert und es futnkioniert einwandfrei. jetzt hab ich nur ne frage zur serverauslastung. dürfte groß kein unterscheid sein, oder?
Bitte warten ..
Mitglied: 16640
19.09.2005 um 21:11 Uhr
Nee, solange Du nicht in die Tiefe einsteigst und mit indizierten Views beginnst zu arbeiten, kannst Du das vernachlässigen.
Bitte warten ..
Mitglied: ottscho
20.09.2005 um 07:54 Uhr
alles klar. dann danke ich dir herzlich für deine mithilfe.
war echt klasse.

viele grüße aus dem schwarzwald
ottscho
Bitte warten ..
Ähnliche Inhalte
Router & Routing
Sif: warning probably an attack
Frage von Maik-SRouter & Routing2 Kommentare

Hallo, seit ein paar Wochen stelle ich unregelmäßig fest, dass meine Verbindung zum Internet unterbrochen wird. Nach wenigen Minuten ...

Windows Tools

Powershell "Warnings to Outputbox" (GUI)

gelöst Frage von skahle85Windows Tools8 Kommentare

Moin Liebe Leutz, ich hänge mal wieder beim Try and Catch. Aber diesmal versuche ich Warnings in meine Outputbox ...

Datenbanken

MSSQL quenquery

gelöst Frage von petereDatenbanken6 Kommentare

Hallo, ich stoße leider an die Grenzen meiner MSSQL-Kenntnisse. Ich muss diesen, eigentlich einfachen, UPDATE-Ausdruck via zwei Verbindungsserver-Verbindungen realisieren. ...

Datenbanken

MSSQL-Zugriffsproblem

Frage von petereDatenbanken3 Kommentare

Hallo, ich habe eine 32bit VB6-Anwendung, mit der ich auf MSSQL 2012 Server Instanzen zugreifen möchte, die einen Spielserver ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...

Windows Server
NTFS Berechtigungen Ordnerstruktur
Frage von hukahu23489Windows Server11 Kommentare

Hallo, ich bin seit kurzem in einer neuen IT-Abteilung und bin über das Berechtigungskonzept des Unternehmens sehr schockiert. Ich ...

Exchange Server
NDR umleiten
Frage von isomasterExchange Server10 Kommentare

Hallo Kollege, ich habe ein Problem mit dem Exchange Server. Wir haben unsere info@ Adresse als Verteilergruppe eingebunden (so ...