作者liaosankai (低温烘焙)
看板PHP
标题Re: [请益] MySQL日期插入问题
时间Fri May 20 00:34:03 2011
※ 引述《APE36 (PT乡民)》之铭言:
: 为何我已经建立Table
: CREATE TABLE e{
: ...
: Bdate DATE,
: ...
: }
: 以下日期插入语法:
: insert into e values('1965-01-09');
: 出来的MySQL结果表格却是 0000-00-00 上网搜寻过了大多都是这样的语法
: 这样到底是哪里错了呢??麻烦大大们指导一下!!新手上路..><勿鞭我
从你的CREATE TABLE来看,e这个名称的表格应该栏位不止一个Bdate吧?
假设完整的语法是
CREATE TABLE `e` (
`name` VARCHAR( 8 ) NOT NULL ,
`Bdate` DATE NOT NULL ,
`age` TINYINT( 1 ) NOT NULL
) ENGINE = MYISAM ;
如果我没记错的话,INSERT INTO有些限制
#如果"有"指定栏位,就可以只给指定的栏位值,没给值的栏位,会使用预设值
INSERT INTO `e` (`Bdate`,`name`) VALUES ('1965-01-09','myName');
#如果"没有"指定栏位,就要给所有栏位值(照栏位顺序给值)
INSERT INTO `e` VALUES('myName','1965-01-09',18);
这边讲个题外话,如果你有机会使用到SQLite,日期的插入,要在插入的同时使用
内建函式,将栏位与值进行格式同步化,大概会像下列这样:
INSERT INTO `e` (date(`Bdate`)) VALUES (date('1965-01-09'));
最後,建议SQL指令的关键字建议全大写,栏位就使用小写,有助於程式码的阅读
--
欢迎来我的网志看看
@
http://liaosankai.pixnet.net/blog
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.33.16.194