温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用python怎么向mysql中插入一个null值

发布时间:2021-03-08 11:17:21 来源:亿速云 阅读:1903 作者:Leah 栏目:开发技术

这期内容当中小编将会给大家带来有关使用python怎么向mysql中插入一个null值,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

python在mysql中插入null空值

sql = “INSERT INTO MROdata (MmeUeS1apId) VALUES (%s)”%‘NULL'

%s没有引号,可以将“null"中null写进数据库,达到NULL值效果。

%s加引号 values就是字符串,导致类型错误,插入错误。

sql = “INSERT INTO MROdata (MmeUeS1apId) VALUES (‘%s')”%‘NULL'

补充:数据库中的空值与NULL的区别以及python中的NaN和None

数据库里面的”空值”有两种:空字符(“”)、空值(NULL)。

两种存储方式在数据库中都很常见,实际中根据业务或者个人习惯可以用这两种方式来存储“空值”。

那这两种到底有什么区别,下面通过例子直接来展示:

-- 创建表test
create table `test` (
`id` int not null ,
`name` varchar(255) null ,
`date` timestamp null ,
`class` varchar(255) null 
);
insert into test (id,name,date,class) values (1,'张三','2017-03-01','a班');
insert into test (id,name,date,class) values (2,'李四','2017-03-02','');
insert into test (id,name,class) values (3,'王五','c班');
select * from test;

使用python怎么向mysql中插入一个null值

select count(date),count(class) from test;

使用python怎么向mysql中插入一个null值

看到这里应该明白了,直观看空字符和NULL的区别在于,在做count计算的时候,空字符也会被计算在里面,而NULL不会。有些同学在使用where is null 和is not null 的时候也要注意数据库中的“空值”是空字符还是NULL。

不然统计结果可能并不是你想要的。

平时有些数据是需要借助python 来处理的,我们来看看python获取数据的时候有哪些需要注意的。

python有两种方式获取数据:

1. 一种是把数据从MYSQL 中导出到txt或者csv,然后本地读取;

2. 另一种是python直接链接数据库,读取数据;

先看第一种:导出到csv,python 读取

使用python怎么向mysql中插入一个null值

第二种:

使用python怎么向mysql中插入一个null值

两种方式读取的数据居然不一样!

1、第一种把数据从MYSQL导出后,python读取时,空值即为NULL;

2、第二种链接数据库后,python能读取表结构,数据库的NULL对应列表中的None以及pandas中的NaN(如果字段类型是时间,则为NaT)。而数据库中的空字符,则被识别为空字符。

个人理解的等式

NULL(数据库)=None(python列表)=NaN(pandas)

空字符(数据库)=空字符(python列表)=空字符(pandas)

从csv中获取数据时:空值(csv)=NULL(数据库)=NaN(pandas)

转为csv数据时:数据库中的NULL\空字符和pandas中的NaN\空字符,都变成csv中的空值

上述就是小编为大家分享的使用python怎么向mysql中插入一个null值了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI