Just nu i M3-nätverket
Gå till innehåll

swede_anka

Medlem
  • Antal inlägg

    23
  • Gick med

  • Senaste besök

  1. Tidigare har jag haft ett anrop med som innehållit FROM DUAL WHERE NOT EXISTS för att undvika skapande av dubletter. Efter en uppdatering av webservern har dock koden slutat fungera men jag vet inte vad jag ska ersätta det med. Koden ser ut enligt INSERT INTO koppling_p_n_kop_med_lgh (park_n_id, kop_med_lag_id, datum_tilltrade, aktiv, confirmed_tilltrade, confirmed_uppsagning) VALUES ('$parkerings_id', '$koppling_medlem_lgh', '$datum_tilltrade', '1', '0', '0') FROM DUAL WHERE NOT EXISTS (SELECT * FROM koppling_p_n_kop_med_lgh WHERE park_n_id = '$parkerings_id' AND kop_med_lag_id = '$koppling_medlem_lgh' AND datum_tilltrade = '$datum_tilltrade') och generer nedanstående felmeddelande Någon som har förslag på vad man kan skriva istället?
  2. swede_anka

    LÖST Anrop fungerar inte efter uppdatering

    Jag har en hemsida skriven i PHP med en MYSQL databas lokalt på min dator som fungerat i flera år men efter en uppdatering så slutade databasanropen fungera. Jag har nu skapat en separat sida för felsökning som i princip bara innehåller databasanropet och en utskrift av resultatet. Får jag bara ordning på detta kan jag sedan skala upp det på mina övriga sidor. Tidigare har jag använt anropet $link = mysql_connect($mysql_server, $mysql_user, $mysql_password); men har förstått att detta inte längre stöds så jag har istället bytt ut det mot mysqli_real_connect Nu fungerar anslutningen till databasen men jag lyckas inte skriva ut resultaten (kod skriven i PHP) Jag får följande felmeddelande: Connected successfullyFatal error: Uncaught Error: Call to undefined function mysql_query() in /Applications/MAMP/htdocs/bostadsforeningen/test.php:48 Någon som kan se vad jag har för fel i koden nedan? 30 $link = mysqli_init(); 31 $conn = mysqli_real_connect( 32 $link, 33 $host, 34 $user, 35 $password, 36 $db, 37 $port 38 ); 39 40 // Check connection 41 if (!$conn) 42 { 43 die("Connection failed: " . mysqli_connect_error()); 44 } 45 echo "Connected successfully"; 46 47 $query = "SELECT * FROM medlem"; 48 $result = mysql_query("$query"); 49 while($array = mysql_fetch_array($result)) 50 { 51 echo $array["namn_1"]; 52 } 53 54 mysqli_close($conn);
  3. swede_anka

    Mysqldump felmeddelande

    Jag ska exportera en tabell från en databas på min raspberry pie. Jag har förstått att man ska använda mysqldump men jag får bara samma felmeddelande trots att jag provat med flera olika kommandon. Databasen heter Templog och tabellen heter DS18B20. Några av de anrop jag provat är följande: mysqldump --opt -u root -p Templog > tabelldump.sql; mysqldump --opt -u root -p Templog DS18B20 > tabelldump.sql; mysqldump -u root -p --all-databases > alldatabases.sql; Oavsett kommandon så får jag alltid samma felmeddelande: Någon som har tips på vad som kan vara fel?
  4. swede_anka

    specifik post från JOIN och GROUP BY

    Det är rätt men jag vill bara ha ett resultat per person och det ska vara det resultat med högst markesskjutning_nivaer.markesskjutning_nivaer_id
  5. swede_anka

    specifik post från JOIN och GROUP BY

    Tabellen "markesskjutning_medlem_niva" binder samman tabellerna "medlemmar" och "markesskjutning_nivaer" enligt markesskjutning_medlem_niva.markesskjutning_m_n_niva = markesskjutning_nivaer.markesskjutning_nivaer_id markesskjutning_medlem_niva.markesskjutning_m_n_medlem = medlemmar.medlems_id Varje medlem är unik i tabellen medlemmar Varje nivå är unik i tabellen markesskjutning_nivaer Båda dessa kopplas samman i markesskjutning_medlem_niva vilket gör att det kommer finnas flera poster med samma medlems_id. Finns det ingen koppling mellan medlemmarna och nivåerna så ska inte NULL resultaten visas I detta fallet är jag endast intresserad av den rad för varje medlem som innehåller en koppling till nivåer där endast den post per medlem med högst "nivaer_id" visas. D.v.s. endast en post per medlem
  6. swede_anka

    specifik post från JOIN och GROUP BY

    Man kan säga att jag vill koppla ihop så att alla resultat från kolumnen "markesskjutning_m_n_medlem" ur resultatet nedan SELECT markesskjutning_m_n_medlem, MAX( markesskjutning_nivaer_id ) FROM markesskjutning_medlem_niva LEFT JOIN markesskjutning_nivaer ON markesskjutning_medlem_niva.markesskjutning_m_n_niva = markesskjutning_nivaer.markesskjutning_nivaer_id GROUP BY markesskjutning_m_n_medlem ska kopplas ihop med en tabell som heter "medlemmar" och dess kolumn "medlems_id" Tabellen "markesskjutning_medlem_niva" är alltså den tabell som binder ihop alla medlemmar med dem nivåer som dem uppnått och det jag vill få fram är den högsta nivån (markesskjutning_nivaer_id) som respektive medlem uppnått. Vet inte riktigt hur jag ska skriva för att få till det?
  7. swede_anka

    specifik post från JOIN och GROUP BY

    jag plockar ut data från flera tabeller via en JOIN sats och använder GROUP BY för att inte få dubletter av medlemmar i resultatet. Ur ena tabellen som innehåller märken så vill jag få fram den post som har det högsta id:t samt tillhörande text. Jag har provat att använda funktionen MAX(). Tar jag det på tabellens ID "markesskjutning_nivaer_id" så får jag fram det högsta ID:t men det är inte den motsvarande texten "markesskjutning_nivaer_niva" som kommer fram. så det verkar inte fungera Koden ser ut enligt: SELECT Fornamn, Efternamn, markesskjutning_nivaer_niva, markesskjutning_m_n_datum, medlems_id, markesskjutning_nivaer_id FROM (markesskjutning_medlem_niva LEFT JOIN medlemmar ON (markesskjutning_medlem_niva.markesskjutning_m_n_medlem = medlemmar.medlems_id)) LEFT JOIN markesskjutning_nivaer ON (markesskjutning_medlem_niva.markesskjutning_m_n_niva = markesskjutning_nivaer.markesskjutning_nivaer_id) GROUP BY medlems_id ORDER BY Efternamn, Fornamn, Jag har provat med ORDER BY att även sortera på markesskjutning_nivaer_id men det har inte heller hjälpt
  8. swede_anka

    vill använda WHERE i INSERT INTO

    Jag vill mata in data i en databas med kravet att kolumn 1 OCH kolumn 2 INTE får vara lika samtidigt som en rad i tabellen. Något i stil med: INSERT INTO deltagande (skytt_id, tavlings_id) VALUES ($skytt, $tavling) WHERE skytt_id!=$skytt AND tavlings_id!=$tavling men WHERE satsen kan så vitt jag förstår inte användas i en INSERT sats. Jag kan inte heller använda en ON DUPLICATE KEY sats eftersom datan ska kunna matas in om skytt_id ELLER tavlings_id är lika men inte om skytt_id OCH tavlings_id är lika med en rad i tabellen
  9. swede_anka

    Kryptera databas (ej lösenord)

    Jag har suttit och letat om det finns något sätt så man kan kryptera delar av en databas men det är viktigt att man fortfarande kan avkoda informationen när den ska visas på en hemsida. Jag har hittat hur man gör för lösenord men då går det ju inte att läsa lösenordet utan endast jämföra. Tanken är nämligen att databasen ska innehålla ett medlemsregister med bl.a. personnummer och adressuppgifter och dessa skulle jag vilja kryptera så att om någon får tag på databasen så ska det inte gå att utläsa all information så enkelt men jag måste fortfarande kunna dekryptera det i webbläsaren så jag kan visa informationen när JAG vill P.S. Jag använder MYSQL och PHP
  10. swede_anka

    använda JOIN för att hitta dem utan relation

    Det fungerar precis som jag vill när jag använder din kod. Den koden jag använde i exemplet så kom alla nycklar med men medlemmarnas namn stod som NULL om det saknades koppling
  11. Om jag har 2 tabeller som heter nycklar och medlemmar och vill få fram alla nycklar som INTE är kopplade med någon medlem, hur skriver man då? Använder jag syntaxen nedan får jag ju ut samtliga nycklar: SELECT nycklar.id, nycklar.beteckning, medlemmar.nyckel_id, medlemmar.namn FROM nycklar LEFT JOIN medlemmar ON (nycklar.id = medlemmar.nyckel_id)
  12. swede_anka

    val av databas till java

    Jag ska skriva ett javaprogram som ska gå att köra från ett usb minne. Programmet kommer behöva jobba mot en databas men frågan är vad för databas ni kan rekommendera. Eftersom det ska gå att köra direkt från usb minnet och på olika datorer så kan jag ju t.ex. inte sätta upp en mysql server
  13. swede_anka

    SET SQL_BIG_SELECTS=1

    Det funkade inte för tydligen så har webbhotellet lagt in en spärr för detta
  14. swede_anka

    SET SQL_BIG_SELECTS=1

    Det hjälpte inte att specificera vilka kolumner jag vill få fram. Hur gör jag för att ställa in SQL_BIG_SELECTS=1 när det är på ett webbhotell (jag kör PHP)?
  15. swede_anka

    SET SQL_BIG_SELECTS=1

    Jag har en hemsida på ett webbhotell som hämtar tävlingsresultat från en MYSQL databas. Detta har fungerat fram tills för ett par dagar sedan. Då slutade resultaten komma upp. Kör jag en kopia av webbsidan och databasen lokalt på min dator så fungerar det. Kör jag koden via webbhotellets sql förfrågningsfunktion så får jag följande resultat (inkl koden) Error SQL query: SELECT alg.alg_tavlings_id, alg.alg_skytt_id, alg.alg_staende_summa, alg_lop_1_summa, alg_lop_2_summa, skeet.skeet_summa, trapp.trapp_summa, jaktstig.jaktstig_summa, (jaktstig.jaktstig_summa + alg.alg_staende_summa + alg_lop_1_summa + alg_lop_2_summa + skeet.skeet_summa + trapp.trapp_summa) AS totalsumma, medlemmar. * , betalat. * FROM ( medlemmar LEFT JOIN alg ON ( medlemmar.medlems_id = alg.alg_skytt_id )) LEFT JOIN skeet ON ( medlemmar.medlems_id = skeet.skeet_skytt_id ) LEFT JOIN jaktstig ON ( medlemmar.medlems_id = jaktstig.jaktstig_skytt_id ) LEFT JOIN trapp ON ( medlemmar.medlems_id = trapp.trapp_skytt_id ) LEFT JOIN betalat ON ( medlemmar.medlems_id = betalat.betalat_medlems_id ) WHERE alg_tavlings_id =113 AND skeet.skeet_tavlings_id =113 AND jaktstig.jaktstig_tavlings_id =105 AND trapp.trapp_tavlings_id =113 AND betalat.betalat_artal =2011 GROUP BY medlems_id ORDER BY totalsumma DESC , Fornamn ASC LIMIT 0 , 30 MySQL said: #1104 - The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay Någon som har förslag vad göra?
×