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
GELÖST

MySQL Server Incorrect integer value

Frage Entwicklung Datenbanken

Mitglied: Crimson

Crimson (Level 1) - Jetzt verbinden

20.03.2010 um 17:27 Uhr, 7028 Aufrufe, 10 Kommentare

Ich habe ein Integer Problem...

Ich momentan laufen meine PHP Scripte auf einem Linux Webspace, wir haben uns nun entschlossen auf einen Server umzusteigen.
Wir haben uns für einen Windows Server entschieden, ob das nun gut, schlecht, vor- oder unvorteilhaft ist sei dahingestellt!

Ich benutze den Microsoft Webserver IIS 7.5, den MySQL Server (Version: 5.1.44-community) und PHP 5.2.13

Jetzt zu meinem Problem, wenn ich ein Script aufrufe in dem ein Integer Wert nicht gegeben, also leer ist, dann sendet er mir verständlicherweise Incorrect integer value zurück.
Auf dem Linux Space wurde sowas aber einfach umgewandelt in den Wert 0 und somit wurden keine Fehler fabriziert, kann mir jemand von euch helfen das das auch so auf der Windows Maschine geht.

Den ganzen Code umscheiben das ist keine Lösung für mich und würde auch sehr lange dauern.


Liebe Grüße
Crimson
Mitglied: Dani
20.03.2010 um 23:23 Uhr
Hi Crimson,
es wäre hilfreich wenn du die entsprechenden Zeilen noch posten würdest. Denn eigentlich sollte das Statement auf beiden Typen funktionieren bzw. ich entwickle auf Windows und Produktiv läuft die Seite auf Linux und noch nie Probleme gehabt - außer du benutzt spezielle Funktionen.


Grüße,
Dani
Bitte warten ..
Mitglied: Crimson
24.03.2010 um 00:40 Uhr
Incorrect integer value: '' for column 'tech_old_rank' at row 1
INSERT INTO game_uni1statpoints SET `id_owner` = '2', `id_ally` = '3', `stat_type` = '1', `stat_code` = '1', `tech_points` = '55104557.4', `tech_count` = '224', `tech_old_rank` = '', `build_points` = '10025456365478', `build_count` = '2401', `build_old_rank` = '', `defs_points` = '975787985', `defs_count` = '366670312', `defs_old_rank` = '', `fleet_points` = '9620798118', `fleet_count` = '1963174204', `fleet_old_rank` = '', `total_points` = '10036108056138', `total_count` = '2329847141', `total_old_rank` = '0', `stat_date` = '1269384708';

So sieht die Fehlermeldung aus, es ist schon klar das tech_old_rank keinen Wert hat, dennoch funktioniert dies unter dem auf Linux basierenden Webserver und auf meinem Laptop.
Auf meinem Laptop läuft XAMPP als Umgebung.
Bitte warten ..
Mitglied: Dani
24.03.2010 um 18:37 Uhr
Schau mal in der Tabellenstruktur, ob für "tech_old_rank" ein Defaultwert hinterlegt worden ist oder ein Pflichtfeld ist.


Grüße,
Dani
Bitte warten ..
Mitglied: Crimson
25.03.2010 um 13:33 Uhr
In dem Feld "tech_old_rank" ist kein Standart Wert hinterlegt und es ist nicht NULL, ich hab zwar schon zu Testzwecken bei allen Feldern einen Standartwert hinterlegt, dennoch gibt es weiterhin massive Probleme im Programm.
Bitte warten ..
Mitglied: Biber
25.03.2010 um 16:15 Uhr
Moin Crimson,

Zitat von Crimson:
In dem Feld "tech_old_rank" ist kein Standart Wert hinterlegt und es ist nicht NULL, ich hab zwar schon zu Testzwecken
bei allen Feldern einen Standartwert hinterlegt, dennoch gibt es weiterhin massive Probleme im Programm.

Ich fasse nochmal zusammen:
  • das Feld "tech_old_rank" ist als INTEGER definiert
  • das Feld "tech_old_rank" ist als NOT NULL definiert
  • das Feld "tech_old_rank" hat keinen Default
--> also würde es in die Grütze gehen, wenn du einen neuen Datensatz einfügt und das Feld "tech_old_rank" nicht explizit ansprichst/einfach nicht erwähnst.

Du gehst doch aber noch einen Schritt weiter: du versuchst doch ausdrücklich, dort einen Leerstring reinzudrücken

Das heißt, selbst wenn diese merkwürdige Syntax "INSERT INTO tabelle SET `feldA` = 'valueA',,feldB = 'valueB',...;", die ich noch nie gesehen habe, funktionieren würde: jedes nicht in total zerrütteten Verhältnissen aufgewachsene Datenbanksystem würde betreten zu Boden schauen, wenn du dann mit dem Ansinnen
...`tech_old_rank` = '', ...
...um die Ecke biegst. Also einen Stringwert in ein Integerfeld reinwürgen wolltest.
Dann setzt doch dort einen numerisch-Nullwert ein.
...`tech_old_rank` = '0', ....

Wenn dieser (erstere) Aufruf bisher keinen Fehler produziert hat, dann wurde dieser INSERT noch nie aufgerufen.

Poste doch mal wie von Dani angeregt die 3 laufenden Zentimeter Sourcecode, die dieses Statement zusammentrümmern.

Grüße
Biber
Bitte warten ..
Mitglied: Crimson
25.03.2010 um 16:23 Uhr
Der Sourcecode ist nicht von relevanz, ich hab in meinem erstem Post geschrieben das es unter Linux und auf meinem Lapptop einwandfrei funktioniert.
In diesen beiden Systemen wird dies automatisch mit 0 gefüllt.

Nur auf dem neuen Server nicht.
Entweder der Server kann damit nicht umgehen, warum auch immer denn die anderen können es, oder es ist eine fehlkonfiguration am Server.
Bitte warten ..
Mitglied: Biber
25.03.2010 um 16:31 Uhr
In der Fehlermeldung steht doch aber deutlich erkennbar, dass diesem Feld ein Stringwert ('') zugewiesen werden soll.
Wieso wäre es deiner Meinung nach zu erwarten, dass es "In diesen beiden Systemen .... automatisch mit 0 gefüllt." wird?

Das hieße doch, du kannst hier und heute genau dieses INSERT-Statement auf den "alten" installationen abfeuern und bekommst ohne Fehler einen neuen Satz angelegt, der auch (numerisch Null) in diesem Feld enthält?

Glaub ich nicht.
Biber
Bitte warten ..
Mitglied: Crimson
25.03.2010 um 16:41 Uhr
Warum ich das erwarte, ganz einfach weil es bei allen(!) Webspace Providern funktioniert hat, außer jetzt bei mir auf dem Server...
Bitte warten ..
Mitglied: Biber
25.03.2010 um 18:06 Uhr
Na gut.... wenn dieses Verhalten deinen Erwartungen entspricht, dann setze "global.sql_mode=TRADITIONAL;" oder "global.sql_mode='';".
vgl Der SQL-Modus des Servers (mySql 5.1) --> SET sql_mode = '';

Dennoch ist mir die Herleitung deiner Erwartungshaltung vollkommen suspekt - wenn mir eine neu installierte Server-Version zu Recht einen Fehler anmeckert, der in der alten Version jahrelang nicht aufgefallen ist, dann würde ich doch sagen: "Hey, wieso war die alte Version zu dämlich, das zu merken?"
Bitte warten ..
Mitglied: Crimson
29.03.2010 um 20:05 Uhr
Entschuldigung für meine lange Antwortzeit, aber schon mal vielen dank für deine Hilfe.

PS: Ich werde versuchen die Fehler zu beseitigen.

LG
Crimson
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Lizenzverkauf Microsoft Open Value
gelöst Frage von edvmaedchenfuerallesWindows Netzwerk4 Kommentare

Hallo zusammen, ist es möglich einzelne Lizenzen aus einem Microsoft OpenValue Lizenzvertrag zu verkaufen? Hintergrund: Wir waren ein Zusammenschluss ...

Batch & Shell
Selected Gridview Value in Variable schreiben
gelöst Frage von reissaus73Batch & Shell4 Kommentare

Wie bekommt man aus einem selektierten Gridview Eintrag in PowerShell Teile des Ergebnisses in eine Variable geschrieben. Mein Ansatz ...

Datenbanken
Verbindung zu MySQL-Server aufbauen?
Frage von mabue88Datenbanken6 Kommentare

Hallo, ich habe auf einem Rechner einen WAMP-Server installiert ). Bislang habe ich über den localhost auf die einzelnen ...

Datenbanken
Wordpress findet MySQL Server nicht
gelöst Frage von 118080Datenbanken27 Kommentare

Moin :-) Ich habe mir um ein Wordpress Theme zu entwickeln eine XAMPP Instanz auf meiner lokalen Entwicklungsumgebung installiert. ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 4 StundenViren und Trojaner

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 8 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware7 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...