Ich erhalte die obige Fehlermeldung, aber die Anzahl der Spalten und der Daten, die ich einfüge, beträgt 19
try { $db = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO prescriptions ( rxID, rxPrimeName, rxAltName, patient, prescriber, dpp, dppMetric, totalDailyDosage, totalDailyPills, frequency, freqMetric, am, noon, pm, bed, prn, pharmacy, lastFill, pills ) VALUES ( '$rxID', '$drugName1', '$drugName2', '$patient', '$prescriber', '$dpp', '$metric', '$totalDailyDosage, $totalDailyPills', '$quantity', '$frequency', '$am', '$noon', '$pm', '$bed', '$prn', '$pharmacy', '$lastFill', '$pills' )"; $db->exec($sql); echo "New record created successfully"; } catch (PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $db = null;
Das ist genau der Fehler, den ich erhalte:
INSERT
prescriptions
(rxID
,rxPrimeName
,rxAltName
,病人
,prescriber
,dpp
, phpcn cphpcndppMetric、totalDailyDosage
、totalDailyPills
、频率
、freqMetric
、am
、noon
、pm phpcnendc phpcn、
bed
、prn
、pharmacy
、lastFill
、pills
) VALUES('1111111', 'Test1', 'Test2', 'Jordan', 'Test3', '50', 'mg', '100, 2', '1', 'BID' , '1 ', '1', '0' , '0', '0', 'KJdh', '2022-04-15', '60') SQLSTATE[21S01]: Die eingefügte Werteliste stimmt nicht mit der Spaltenliste überein: 1136 Die Spaltenanzahl stimmt nicht mit der Wertanzahl in Zeile 1 überein
Beide Seiten (INSERT INTO
和 VALUES
) haben 19
Wenn ich phpMyAdmin zum Einfügen von Daten verwende, werden folgende Ergebnisse zurückgegeben:
EINFÜGEN
prescriptions
(keyID
,rxID
,rxPrimeName
,rxAltName
,病人
,prescriber
,phpcnc phpcndpp、dppMetric
、totalDailyDosage
、totalDailyPills
、频率
、freqMetric
、am
、noonphpcnendc phpcn、
pm
、bed
、prn
、pharmacy
、lastFill
、pills
) WERTE (NULL, '1234567', 'Test1', 'Test2', 'Jordan', 'Test3', '30', 'mg', '60', '2', '1', 'BID ', '1', ' 1', '0', '0', '0', 'Atrium', '2022-04-15', '60');
Bitte entschuldigen Sie den Block bei den Spaltennamen oben – ich habe backquote
phpMyAdmin funktioniert großartig Ja, ich weiß, dass die variablen Daten unterschiedlich sind, aber alle akzeptierten Typen sind spaltenbasiert
问题是您的
values
子句缺少引号:我数了一下,有18个。 看起来您在“100, 2”处缺少 ',