Ändra kollationering för MySQL-databas

För att kunna sortera tabeller i bokstavsordning i en MySQL-databas som innehåller de svenska tecknen Å, Ä och Ö så behöver databasen ha rätt kollationering.

För svenska tecken är det: utf8_swedish_ci som gäller.

Ifall du stöter på problem att din databas sorterar fel på grund av att din databas har fel kollationering så kan du åtgärda detta i efterhand genom detta lilla PHP-skript.

<?php
 $sql = mysql_connect('localhost','root','password');
 if(!$sql) {die("Kunde inte ansluta till databasen.");}
 mysql_select_db('dbname');
 $result=mysql_query('show tables');
 while($tables = mysql_fetch_array($result)) {
 foreach ($tables as $key => $value) {
 mysql_query("
 ALTER TABLE $value CONVERT TO CHARACTER SET utf8 COLLATE utf8_swedish_ci
 ");
 }}
 echo("Kollationeringen är genomförd!");
?>

Alternativt

Det går också att hämta ut alla tabeller i databasen för att sedan göra en query direkt i exempelvis PhpMyAdmin.

SELECT CONCAT("ALTER TABLE `", TABLE_NAME,"` CONVERT TO CHARACTER SET utf8 COLLATE utf8_swedish_ci;") AS mySQL
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="YOUR_DATABASE_NAME"
AND TABLE_TYPE="BASE TABLE"

 

Vanliga MySQL-queries med PHP

Lägga in information i en databas-tabell i MySQL med PHP
I detta exempel visas hur man lägger in information i en tabell med PHP i en MySQL databas.

$id = "1";
$fruit = "Apple";
$color = "Green";
$sql="INSERT INTO table_fruits(id,fruits,colors) VALUES('$id','$fruit','$color')";
mysql_query($sql);

Uppdatera en databas-tabell i MySQL med PHP
I detta exempel visas hur man uppdaterar en post i en MySQL databas-tabell med PHP.

$id = "1";
$fruit = "Lemon";
$color = "Yellow";
$sql = "UPDATE table_fruit SET fruits = '$fruit', colors = '$color' WHERE id = '$id' ";
mysql_query($sql);

Radera en post ur en MySQL databas-tabell med PHP
I detta exempel visas hur man raderar en post ur en databas-tabell i MySQL med PHP.

$id = "1";
$sql = "DELETE FROM table_fruits WHERE id = '$id'";
mysql_query($sql);

Visa alla poster i en MySQL databas-tabell med PHP
I detta exempel visas hur du visar alla poster som finns i en MySQL databas-tabell med PHP.

$sql = mysql_query("SELECT * FROM table_fruits");
while($row= mysql_fetch_array($sql)){
 $row['id'];
 $row['fruits'];
 $row['colors'];
}

Skapa kopia av en rad i en MySQL databas-tabell med PHP
I detta exempel visas hur man skapar en exakt kopia av en rad i en MySQL databas-tabell med PHP.

$id = "1";
$sql = "INSERT INTO table_fruits(fruits, colors) SELECT fruits, colors FROM table_fruits WHERE id = '$id'";
mysql_query($sql);