执行以下mysql查询时,将使用null而不是指定的值填充字段。
INSERT INTO invoices VALUES(
slNo='2', mrp='3', PplusT='3.375',
name='Eraser', code='002', qty='15',
unitPrice='3', rateOfTax='12.5', taxAmt='0.375',
cess='0.004', total='50.625', billNo='10001')
表架构
slNo int(11)
mrp float
PplusT float
name varchar(50)
code varchar(10)
qty int(11)
unitPrice float
rateOfTax float
taxAmt float
cess float
total float
billNo varchar(10)
我使用PHP和PHPMYADMIN尝试了查询,但结果是一样的。
答案 0 :(得分:3)
请检查manual。将VALUES
替换为SET
INSERT INTO invoices
SET slNo=2, mrp=3, PplusT=3.375,
name='Eraser', code='002', qty=15,
unitPrice=3, rateOfTax=12.5, taxAmt=0.375,
cess=0.004, total=50.625, billNo='10001'
您必须从数值数据类型的值中删除引号,否则它会尝试将它们作为字符串插入。
答案 1 :(得分:0)
删除数值周围的单引号。
答案 2 :(得分:0)
尝试取消引用您的号码......您实际上是在尝试将字符串插入整数和浮点数
INSERT INTO invoices VALUES(
slNo=2, mrp=3, PplusT=3.375,
name='Eraser', code='002', qty=15,
unitPrice=3, rateOfTax=12.5, taxAmt=0.375,
cess=0.004, total=50.625, billNo='10001')
答案 3 :(得分:0)
请阅读手册http://dev.mysql.com/doc/refman/5.0/en/insert-select.html
INSERT INTO invoices SET
slNo='2', mrp='3', PplusT='3.375',
name='Eraser', code='002', qty='15',
unitPrice='3', rateOfTax='12.5', taxAmt='0.375',
cess='0.004', total='50.625', billNo='10001'
或
INSERT INTO invoices ( slNo, mrp, PplusT, name, code, qty, unitPrice, rateOfTax,taxAmt,
cess, total, billNo) VALUES( '2', '3', '3.375', 'Eraser', '002', '15', '3', '12.5', '0.375','0.004', '50.625', '10001')
答案 4 :(得分:0)
我可能错了,但插入语句不应该是这样的:
INSERT INTO invoices (slNo, mrp, PplusT, name, code, qty, unitPrice, rateOfTax, taxAmt, cess, total, billNo)
VALUES('2', '3', '3.375', 'Eraser', '002', '15', '3', '12.5', '0.375',
'0.004', '50.625', '10001')
答案 5 :(得分:0)
查看您的格式,并阅读此页面。此外,不建议用引号括起整数值,我认为它在MySQL中有用......