濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > python 在mysql中插入null空值的操作

python 在mysql中插入null空值的操作

熱門標(biāo)簽:北京外呼電銷機(jī)器人招商 crm電銷機(jī)器人 汕頭電商外呼系統(tǒng)供應(yīng)商 電銷機(jī)器人 金倫通信 賓館能在百度地圖標(biāo)注嗎 云南地圖標(biāo)注 400電話 申請(qǐng) 條件 南京crm外呼系統(tǒng)排名 鄭州智能外呼系統(tǒng)中心

python在mysql中插入null空值

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

%s沒(méi)有引號(hào),可以將“null"中null寫進(jìn)數(shù)據(jù)庫(kù),達(dá)到NULL值效果。

%s加引號(hào) values就是字符串,導(dǎo)致類型錯(cuò)誤,插入錯(cuò)誤。

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

補(bǔ)充:數(shù)據(jù)庫(kù)中的空值與NULL的區(qū)別以及python中的NaN和None

數(shù)據(jù)庫(kù)里面的”空值”有兩種:空字符(“”)、空值(NULL)。

兩種存儲(chǔ)方式在數(shù)據(jù)庫(kù)中都很常見(jiàn),實(shí)際中根據(jù)業(yè)務(wù)或者個(gè)人習(xí)慣可以用這兩種方式來(lái)存儲(chǔ)“空值”。

那這兩種到底有什么區(qū)別,下面通過(guò)例子直接來(lái)展示:

-- 創(chuàng)建表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;

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

看到這里應(yīng)該明白了,直觀看空字符和NULL的區(qū)別在于,在做count計(jì)算的時(shí)候,空字符也會(huì)被計(jì)算在里面,而NULL不會(huì)。有些同學(xué)在使用where is null 和is not null 的時(shí)候也要注意數(shù)據(jù)庫(kù)中的“空值”是空字符還是NULL。

不然統(tǒng)計(jì)結(jié)果可能并不是你想要的。

平時(shí)有些數(shù)據(jù)是需要借助python 來(lái)處理的,我們來(lái)看看python獲取數(shù)據(jù)的時(shí)候有哪些需要注意的。

python有兩種方式獲取數(shù)據(jù):

1. 一種是把數(shù)據(jù)從MYSQL 中導(dǎo)出到txt或者csv,然后本地讀??;

2. 另一種是python直接鏈接數(shù)據(jù)庫(kù),讀取數(shù)據(jù);

先看第一種:導(dǎo)出到csv,python 讀取

第二種:

兩種方式讀取的數(shù)據(jù)居然不一樣!

1、第一種把數(shù)據(jù)從MYSQL導(dǎo)出后,python讀取時(shí),空值即為NULL;

2、第二種鏈接數(shù)據(jù)庫(kù)后,python能讀取表結(jié)構(gòu),數(shù)據(jù)庫(kù)的NULL對(duì)應(yīng)列表中的None以及pandas中的NaN(如果字段類型是時(shí)間,則為NaT)。而數(shù)據(jù)庫(kù)中的空字符,則被識(shí)別為空字符。

個(gè)人理解的等式

NULL(數(shù)據(jù)庫(kù))=None(python列表)=NaN(pandas)

空字符(數(shù)據(jù)庫(kù))=空字符(python列表)=空字符(pandas)

從csv中獲取數(shù)據(jù)時(shí):空值(csv)=NULL(數(shù)據(jù)庫(kù))=NaN(pandas)

轉(zhuǎn)為csv數(shù)據(jù)時(shí):數(shù)據(jù)庫(kù)中的NULL\空字符和pandas中的NaN\空字符,都變成csv中的空值

在python處理完數(shù)據(jù)后,往數(shù)據(jù)庫(kù)寫數(shù)據(jù)的時(shí)候也一樣。注意注意!

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 基于python的mysql復(fù)制工具詳解
  • 由Python編寫的MySQL管理工具代碼實(shí)例
  • python實(shí)現(xiàn)讀取excel寫入mysql的小工具詳解
  • Python操作MySQL數(shù)據(jù)庫(kù)的簡(jiǎn)單步驟分享
  • Python爬蟲爬取全球疫情數(shù)據(jù)并存儲(chǔ)到mysql數(shù)據(jù)庫(kù)的步驟
  • Python爬取騰訊疫情實(shí)時(shí)數(shù)據(jù)并存儲(chǔ)到mysql數(shù)據(jù)庫(kù)的示例代碼
  • 解決python mysql insert語(yǔ)句的問(wèn)題
  • python實(shí)現(xiàn)MySQL指定表增量同步數(shù)據(jù)到clickhouse的腳本
  • 用python開(kāi)發(fā)一款操作MySQL的小工具

標(biāo)簽:西寧 浙江 昆明 錫林郭勒盟 懷化 文山 梅州 石家莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python 在mysql中插入null空值的操作》,本文關(guān)鍵詞  python,在,mysql,中,插入,null,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python 在mysql中插入null空值的操作》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于python 在mysql中插入null空值的操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    唐河县| 和平区| 犍为县| 于田县| 江源县| 灌云县| 永吉县| 沭阳县| 贵溪市| 彩票| 云南省| 镇平县| 天镇县| 盐城市| 余庆县| 孟连| 花莲县| 旌德县| 阳西县| 东光县| 金湖县| 永丰县| 恩平市| 开鲁县| 中阳县| 郸城县| 康定县| 金阳县| 平舆县| 民县| 漳平市| 武强县| 墨玉县| 遂平县| 克拉玛依市| 靖宇县| 六枝特区| 霍邱县| 钟祥市| 乐都县| 德惠市|