我已经阅读了这些问题:
和一些谷歌建议的链接。毫无头绪。
这是我的情况。 我在MariaDB 10.0中有一个表,inkubator_pinjam,定义为
CREATE TABLE `inkubator_pinjam` (
`id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
`kode_pinjam` VARCHAR(20) NOT NULL DEFAULT '',
`id_inkubator` BIGINT(20) NOT NULL DEFAULT '0',
`tgl_pinjam` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`nama_bayi` VARCHAR(75) NOT NULL DEFAULT '',
`kembar` ENUM('Y','N') NOT NULL DEFAULT 'N',
`tgl_lahir` DATE NULL DEFAULT NULL,
`berat_lahir` DECIMAL(10,2) NOT NULL DEFAULT '0.00',
`panjang_lahir` DECIMAL(10,2) NOT NULL DEFAULT '0.00',
`kondisi` ENUM('SEHAT','SAKIT') NOT NULL DEFAULT 'SEHAT',
`rumah_sakit` VARCHAR(50) NOT NULL DEFAULT '',
`nama_dokter` VARCHAR(75) NOT NULL DEFAULT '',
`tgl_pulang` DATE NULL DEFAULT NULL,
`no_kk` VARCHAR(50) NOT NULL DEFAULT '',
`alamat` TEXT NULL,
`nama_ibu` VARCHAR(50) NOT NULL DEFAULT '',
`hp_ibu` VARCHAR(20) NOT NULL DEFAULT '',
`email_ibu` VARCHAR(50) NOT NULL DEFAULT '',
`nama_ayah` VARCHAR(50) NOT NULL DEFAULT '',
`hp_ayah` VARCHAR(20) NOT NULL DEFAULT '',
`email_ayah` VARCHAR(50) NOT NULL DEFAULT '',
`jumlah_pinjam` INT(2) NOT NULL DEFAULT '1',
`status_pinjam` ENUM('Ditunda','Disetujui','Ditolak') NOT NULL DEFAULT 'Ditunda',
`tgl_update_status_pinjam` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`keterangan_status_pinjam` VARCHAR(200) NOT NULL DEFAULT '',
`konfirmasi` ENUM('Y','N') NOT NULL DEFAULT 'N',
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=MyISAM
AUTO_INCREMENT=2
;
在执行此操作的AFTER DELETE事件上触发
CREATE DEFINER=`inkubator`@`localhost` TRIGGER `inkubator_pinjam_after_delete` AFTER DELETE ON `inkubator_pinjam` FOR EACH ROW BEGIN
delete from inkubator_monitoring where kode_pinjam = OLD.kode_pinjam;
delete from inkubator_kembali where kode_pinjam = OLD.kode_pinjam;
END
在PHP中,我的PHP脚本生成一个插入SQL以向表中添加数据:
insert into inkubator_pinjam (
id, kode_pinjam, id_inkubator, tgl_pinjam,
nama_bayi, kembar, tgl_lahir, berat_lahir,
panjang_lahir, kondisi, rumah_sakit,
nama_dokter, tgl_pulang, no_kk, alamat,
nama_ibu, hp_ibu, email_ibu, nama_ayah,
hp_ayah, email_ayah, jumlah_pinjam,
keterangan_status_pinjam, konfirmasi
) values (
24145550156759089, '323431-343535-39', 0, CURRENT_TIMESTAMP(),
'DIAN KHAMSAWARNI', 'N', '2015-09-21', 3.2,
28, 'SEHAT', 'RSU Wahidin',
'Dr. Marhamah, Sp.OG', '2015-09-23', '9288299288', 'BTN Hamzy E8/A',
'RINA MAWARNI', '+62837739938845', '', 'ARIFIN ADINEGORO', '+62837739938845', '', 1,
'Ditunda untuk review.', 'Y'
);
这里出现的问题是MariaDB一直显示错误
SQL错误(1054):字段列表中的未知列curent_timestamp
这对我来说很奇怪。但是数据插入有效,表中存在数据。这对我来说是一个很大的问题,因为数据插入工作但是MySQL向PHP报告发生了错误,我的PHP脚本将失败......
上面的截图来自运行插入SQL脚本的HeidiSQL,因此问题不是来自PHP。
问题是,我如何删除此错误?
我已将错误输入current_timestamp
(双重' r')重复检查为curent_timestamp
(单一' r'),检查并重新检查反引号,未公开单引号和双引号,触发器和列默认值。仍然没有任何线索。
谷歌没有任何提示,所以任何想法都会受到高度赞赏。谢谢。
答案 0 :(得分:0)
从最后一行开始的第三行
添加以下两行作为测试,删除备注字符:
insert into inkubator_pinjam (
id, kode_pinjam, id_inkubator, tgl_pinjam,
nama_bayi, kembar, tgl_lahir, berat_lahir,
panjang_lahir, kondisi, rumah_sakit,
nama_dokter, tgl_pulang, no_kk, alamat,
nama_ibu, hp_ibu, email_ibu, nama_ayah,
hp_ayah, email_ayah, jumlah_pinjam,
tgl_update_status_pinjam, -- <------ ADD THIS HERE ***********
keterangan_status_pinjam, konfirmasi
) values (
24145550156759089, '323431-343535-39', 0, CURRENT_TIMESTAMP(),
'DIAN KHAMSAWARNI', 'N', '2015-09-21', 3.2,
28, 'SEHAT', 'RSU Wahidin',
'Dr. Marhamah, Sp.OG', '2015-09-23', '9288299288', 'BTN Hamzy E8/A',
'RINA MAWARNI', '+62837739938845', '', 'ARIFIN ADINEGORO', '+62837739938845', '', 1,
CURRENT_TIMESTAMP(), -- <------ ADD THIS HERE ***********
'Ditunda untuk review.', 'Y'
);