> 백엔드 개발 > PHP 튜토리얼 > php怎么往mysql datetime或者int插入空字符串

php怎么往mysql datetime或者int插入空字符串

WBOY
풀어 주다: 2016-06-06 20:06:22
원래의
1369명이 탐색했습니다.

mysql表结构其中的字段 my_date datetime DEFAULT NULL,
先看一段简单插入代码
$sql = "insert into my_test(my_date) VALUES ('')";
mysqli_query($dbc,$sql);

插入失败的 请问怎么往mysql datetime或者int插入空字符串?

当然我也知道$sql = "insert into my_test(my_date) VALUES (null)";可以插入成功的;
但是插入代码是我备份数据库(.sql)自动生成的在datetime本身没有数据的情况下输出的就是空字符串而不是null,那么就不能正常插入了?或者怎么输出insert into my_test(my_date) VALUES (null) 这个null在.sql里?
各位高手 在线等!!!!!!!!!!!!!!

回复内容:

mysql表结构其中的字段 my_date datetime DEFAULT NULL,
先看一段简单插入代码
$sql = "insert into my_test(my_date) VALUES ('')";
mysqli_query($dbc,$sql);

插入失败的 请问怎么往mysql datetime或者int插入空字符串?

当然我也知道$sql = "insert into my_test(my_date) VALUES (null)";可以插入成功的;
但是插入代码是我备份数据库(.sql)自动生成的在datetime本身没有数据的情况下输出的就是空字符串而不是null,那么就不能正常插入了?或者怎么输出insert into my_test(my_date) VALUES (null) 这个null在.sql里?
各位高手 在线等!!!!!!!!!!!!!!

设置默认字符串为空或者直接执行SQL的值设置成空的

字符串只能插入在varchar char text 等类型字段中
int datatime 可以用 NULL 啊,不过前提是该字段设计的时候允许为null

请问你怎么导的 好奇,null导出sql语句是空串?

没法儿答你,肯定是不行的。
你备份的时候就出问题了,null就是null,不能变成 '',还是使用正规的方式导入导出数据吧,比如mysqldump命令,或者通过phpmyadmin, Navicat for Mysql等工具。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿