Mysql
 sql >> Baza danych >  >> RDS >> Mysql

utwórz bazę danych za pomocą pdo w php

Mamy tu do czynienia z dwoma dużymi problemami. Pierwszy jest niewielki. Te wiersze kodu nigdy nie zadziałają:

$db->bindParam(1,`account`);
$db->bindParam(1,'$dbb'); //line 17

Dzieje się tak, ponieważ obaj próbują wywołać bindParam jako ciąg . To jest niemożliwe. bindParam potrzebuje odniesienia do zmiennej. Dlatego pojawia się błąd „nie można przekazać parametru 2 przez odniesienie”:możesz przekazać tylko zmienne przez odniesienie.

Każdy z nich jednak zadziała:

$db->bindParam(1, $dbb); // call bindParam on a variable
$db->bindValue(1, 'account'); // call bindValue on a string literal

Bardziej fundamentalnym problemem jest jednak twoje zrozumienie przygotowanych wypowiedzi. Idea przygotowanych oświadczeń nie proste podstawienie napisów do innego napisu. Zasadniczo chodzi o oddzielenie struktury zapytania od danych. Nazwa tabeli jest uważana za część struktury zapytania, a nie za część danych. Musisz umieścić nazwę tabeli w oryginalnym zapytaniu. Twój pierwszy kod to sposób na zrobienie tego.

$db = $conn->prepare( 'CREATE SCHEMA IF NOT EXISTS account');



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co dokładnie oznacza zestaw znaków i sortowanie?

  2. Catchable błąd krytyczny:obiekt klasy mysqli_stmt nie mógł zostać przekonwertowany na string

  3. Jak mogę przebudować indeksy i zaktualizować statystyki w MySQL innoDB?

  4. Kod błędu MySQL:1305. FUNKCJA JSON_EXTRACT nie istnieje w kliencie MySQL w wersji:5.5.52

  5. MySQL UPDATE dołącza dane do kolumny