Kom ihåg mig?
Home Menu

Menu


Har mysql blivit mer strängt på sistone?

Ämnesverktyg Visningsalternativ
Oläst 2007-05-26, 15:46 #1
totoos avatar
totoo totoo är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Nov 2006
Inlägg: 730
totoo totoo är inte uppkopplad
Mycket flitig postare
totoos avatar
 
Reg.datum: Nov 2006
Inlägg: 730
Halloo... Jag har börjat lira med senaste versionen av mysql från att bara tidigare ha arbetat med lite äldre versioner. Nu ser jag att några av mina sql-frågor som har fungerat prima förr (även på tre stora webbhotell).

Jag får nu error på insert-frågor som skippar fält om fälten inte har defaultvärden. Förut har strängar bara blivit tomma och tal har fått en nolla. Men så är det alltså inte längre - eller är det en inställning som justerar detta?
totoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-26, 16:02 #2
kullervos avatar
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Dec 2003
Inlägg: 1 519
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
kullervos avatar
 
Reg.datum: Dec 2003
Inlägg: 1 519
...och datum har fått värdet 0000-00-00 (läs förklaringen i manualen för ett skratt). Det borde MySQL fått motsatsen till Nobelpriset för.

Om man inte sätter ett default-värde blir default NULL. Försöker man lagra NULL i en kolumn som inte tillåter NULL-värden slängs givetvis ett fel. Nu kan du äntligen ha koll på vad dina INSERTs egentligen gör.
kullervo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-26, 16:12 #3
totoos avatar
totoo totoo är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Nov 2006
Inlägg: 730
totoo totoo är inte uppkopplad
Mycket flitig postare
totoos avatar
 
Reg.datum: Nov 2006
Inlägg: 730
Hmm, men alltså jag får felet "Field 'loginStamp' doesn't have a default value" vilket jag tolkar som att mina insert måste ha med alla fält som parametrar som saknar defaultvärden.

Därför antar jag att automatiska noll-värden inte delas ut längre.
totoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-27, 01:58 #4
totoos avatar
totoo totoo är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Nov 2006
Inlägg: 730
totoo totoo är inte uppkopplad
Mycket flitig postare
totoos avatar
 
Reg.datum: Nov 2006
Inlägg: 730
Men det är alltså på så vis att mysql har blivit mer strängt? Eller är det en inställning? Behöver jag skriva om mina sqlfrågor/göra om mina tabeller eller vad är det som gäller? För i så fall är det ju bra att ha lite framförhållning och göra om ungefär varenda site jag har släppt ut - så att inte alla mina siter ramlar i bitar om webbhosten uppdaterar mysql...

*ryser*
totoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-27, 08:15 #5
melin melin är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Jul 2003
Inlägg: 1 396
melin melin är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Jul 2003
Inlägg: 1 396
sätt default värden när du skapar din tabell... så torde det lösa sig
melin är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-27, 16:35 #6
totoos avatar
totoo totoo är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Nov 2006
Inlägg: 730
totoo totoo är inte uppkopplad
Mycket flitig postare
totoos avatar
 
Reg.datum: Nov 2006
Inlägg: 730
ja jo - men som jag sa - om detta nu är ett krav från mysqls sida så känns det som att man kanske måste uppdatera tabellerna i varenda site jag har online (flera kunder och f.d. kunder) för annars kan siterna ramla ihop om deras webbhotell uppdaterar mysql.... Det är där skon klämmer.

Men om det finns inställningsmöjligheter kring detta så kanske webbhotellen ger fan i att fucka för sina kunder.

- Eller så har jag missat något, men det är därför jag frågar.
totoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-27, 17:19 #7
kullervos avatar
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Dec 2003
Inlägg: 1 519
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
kullervos avatar
 
Reg.datum: Dec 2003
Inlägg: 1 519
Citat:
Originally posted by totoo@May 27 2007, 15:35
Men om det finns inställningsmöjligheter kring detta så kanske webbhotellen ger fan i att fucka för sina kunder.
Har man valt att bygga en applikation som förlitar sig på icke-standardiserade MySQL-egenheter så bör man vara beredd på att man kommer behöva ändra i koden för kunna köra andra RDBMS:er eller t.om. framtida versioner av MySQL. MySQL kommer säkert bli en riktigt bra RDBMS på sikt men en hel del kommer säkert ändras tills dess. Vill man vara på den säkrare sidan så kan man försöka hålla sig till SQL-standard eller åtminstonde de facto-standard. Det går att köra MySQL i striktare mode (http://dev.mysql.com/doc/refman/5.0/...-sql-mode.html)

I.o.m. att jag har dålig koll på MySQL så vågar jag fortfarande inte påstå att det är just det här som är "problemet" för dig. Surfa in på URL:en ovan och kika om du inte kan välja en lösare mode för att du inte ska behöva ändra i koden.
kullervo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-27, 17:58 #8
totoos avatar
totoo totoo är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Nov 2006
Inlägg: 730
totoo totoo är inte uppkopplad
Mycket flitig postare
totoos avatar
 
Reg.datum: Nov 2006
Inlägg: 730
naturligtvis har du rätt i att man ska följa standarden, men jag kände inte till att man inte fick lämna fält för att bli automatiskt "odefinierade" (0 eller tomt). Mitt misstag naturligtvis (förutsatt att det är ett brott mot standarden - som det antagligen är).

Det är inte det att jag använder alla medel för att slippa ändra i koden, utan tanken var snarare om min tidigare mysql-version har haft automatiskt snällt läge per default och att mysql har ändrats i senare versioner och har strikt läge som start.

Om det vore så - och att det är problemet, då kan man anta att webbhotellen avsiktligt har satt mysql på de snälla inställingarna och kommre behålla dem där.

Det var så jag resonerade. Det är inte så att jag försöker att undvika att följa standarden.

Tack för svaret iaf, jag ska spana igenom din länk ikväll. Jag ska sätta mysql så strikt det går - för så kodar jag precis allt annat.
totoo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-05-30, 22:21 #9
Osiriss avatar
Osiris Osiris är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2006
Inlägg: 391
Osiris Osiris är inte uppkopplad
Flitig postare
Osiriss avatar
 
Reg.datum: Apr 2006
Inlägg: 391
Känner igen "strängheten" då jag senast igår inte fick göra insert till tinytext över huvud taget. Försökte bara knö in en sträng på 10-20 tecken men den klagade på att det inte fick plats
Gjorde jag om fälten till varchar så lugnade den ner sig, dock har jag inte löst mediumtext riktigt ännu...

Förslag?
Osiris är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 00:21.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017