[MySQL|PHP] Tworzenie tabeli
Nie wiesz jak stworzyć tabelę w MySQL? Rozwiązania są dwa. Jeśli masz dostęp do phpMyAdmin to właśnie w nim możesz w bardzo łatwy i szybki sposób stworzyć nową tabelę. Drugie rozwiązanie to prosty skrypt PHP.
Tworzenie tabeli w phpMyAdmin
Utworzenie nowej tabeli w phpMyAdmin sprowadza się dosłownie do kilku kliknięć i wpisania jej nazwy. Po zalogowaniu się wybieramy z listy interesującą nas bazę danych, następnie odnajdujemy na samym dole blok "Utwórz nową tabelę w bazie danych nazwa bazy", wpisujemy nazwę nowej tabeli, liczbę pól i zatwierdzamy. Ukaże nam się nowa strona, gdzie musimy ustawić pola (możemy także dodać kolejne, jeśli wcześniej wybraliśmy zbyt małą ilość). Po ustawieniu pól, zatwierdzamy i mamy utworzoną nową tabelę.
Tworzenie tabeli w PHP
W przeciwieństwie do phpMyAdmin, który większość robi za nas, utworzenie nowej tabeli z poziomu PHP wymaga znajomości zapytań SQL i rozszerzenia mysqli lub PDO. W poniższym przykładzie posłużymy się rozszerzeniem mysqli do wykonania zapytania tworzącego tabelę.
Na początku należy połączyć się z bazą danych:
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli('localhost', 'user', 'password', 'db_name');
$mysqli->set_charset('utf8mb4');
W kolejnym kroku tworzymy zapytanie SQL, które utworzy nową tabelę z wybranymi przez nas polami (trzeba ustawić przynajmniej jedno pole, aby tabela została utworzona):
$query = 'CREATE TABLE IF NOT EXISTS users (user_id int NOT NULL AUTO_INCREMENT, PRIMARY KEY(user_id))';
Teraz możemy wykonać nasze zapytanie:
$result = $mysqli->execute_query($query);
if($result) {
echo 'Tabela została utworzona.';
}
else {
echo 'Nie udało się utworzyć tabeli.';
}
Powyższy kod SQL tworzący tabelę jest przykładowy. Tworzy on tabelę "users" z jedną kolumną "user_id", z atrybutami NULL i AUTO_INCREMENT oraz kluczem głównym (PRIMARY KEY). Reguła IF NOT EXISTS
zapobiega usunięciu już istniejącej tabeli. Tabela zostanie utworzona, jeśli połączenie z bazą zostało poprawnie nawiązane. Jak widać sprawa z utworzeniem nowej tabeli MySQL jest dość prosta, szczególnie jeśli korzystamy z phpMyAdmin.
";
OdpowiedzUsuń}
$link = include('polacz.php');
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
if(isset($_POST['cr7'])) {
$sql = "CREATE TABLE IF NOT EXISTS $pseudonim (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
first_name VARCHAR(30) NOT NULL,
last_name VARCHAR(30) NOT NULL,
email VARCHAR(70) NOT NULL UNIQUE
)";
if(mysqli_query($link, $sql)){
echo "Table created successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
mysqli_close($link);
}
?>
<1form action="#" method="POST">
<1input type="submit" name="cr7"/>
Ale zwraca błąd: ERROR: Could not able to execute CREATE TABLE juventus ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, first_name VARCHAR(30) NOT NULL, last_name VARCHAR(30) NOT NULL, email VARCHAR(70) NOT NULL UNIQUE ).
WHY??????