Mengapakah saya mendapat ralat "Senarai nilai yang dimasukkan tidak sepadan dengan senarai lajur: 1136 Kiraan lajur tidak sepadan dengan kiraan nilai" apabila data sepadan?
P粉561323975
P粉561323975 2024-03-26 12:34:51
0
2
397

Saya mendapat ralat di atas tetapi kiraan kedua-dua lajur dan data yang saya masukkan ialah 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;

Ini adalah ralat tepat yang saya dapat:

INSERTprescriptions ( rxID, rxPrimeName, rxAltName, 病人, prescriber, dpp, phpcn cphpcndppMetric、totalDailyDosagetotalDailyPills频率freqMetricamnoon pm phpcnendc phpcn、bedprnpharmacylastFillpills ) NILAI('1111111', 'Test1', 'Test2', 'Jordan', 'Test3', '50', 'mg', '100, 2', '1', 'BID' , '1 ', '1', '0' , '0', '0', 'KJdh', '2022-04-15', '60') SQLSTATE[21S01]: Senarai nilai yang dimasukkan tidak sepadan dengan senarai lajur: 1136 Kiraan lajur tidak sepadan dengan kiraan nilai pada baris 1

Kedua-dua belah (INSERT INTOVALUES) mempunyai 19

Apabila saya menggunakan phpMyAdmin untuk memasukkan data, keputusan yang dikembalikan adalah seperti berikut:

INSERTprescriptionskeyIDrxIDrxPrimeNamerxAltName病人prescriber,phpcnc phpcndppdppMetrictotalDailyDosagetotalDailyPills频率freqMetricamnoonphpcnendc phpcn、pmbedprnpharmacylastFillpills) NILAI (NULL, '1234567', 'Test1', 'Test2', 'Jordan', 'Test3', '30', 'mg', '60', '2', '1' , 'BID ', '1', ' 1', '0', '0', '0', 'Atrium', '2022-04-15', '60');

Sila maafkan blok pada nama lajur di atas - Saya menggunakan backquote

di sekitar nama lajur

phpMyAdmin berfungsi hebat Ya saya tahu data pembolehubah adalah berbeza tetapi semua jenis yang diterima adalah berdasarkan lajur

P粉561323975
P粉561323975

membalas semua(2)
P粉268284930

Masalahnya ialah klausa values anda tiada petikan:

VALUES 
(
'$rxID', '$drugName1', '$drugName2', '$patient', '$prescriber', '$dpp', '$metric',
'$totalDailyDosage, > missing quote --> $totalDailyPills', 
'$quantity', '$frequency', '$am', '$noon', '$pm', '$bed', '$prn', '$pharmacy', '$lastFill', '$pills'
)";
P粉665679053

Saya kira, ada 18. Nampaknya anda tiada ' di "100, 2",

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan