日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

linux系统sql语句报错_在linux下写的mysql无法插入,sql语句在复制中变'脏'了.

發布時間:2024/1/23 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux系统sql语句报错_在linux下写的mysql无法插入,sql语句在复制中变'脏'了. 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1:問題故障描述

因為在linux下開發,所以修改mysql字段的時,用的phpmyadmin來直接修改生成修改后的sql,然后復制進word(libreoffice)后提交到項目管理系統,

同事發到項目管理系統后不能運行.于是有了這篇文章.

2:首先新建表

CREATE TABLE IF NOT EXISTS `nns_ad_log_count` (

`nns_id` char(32) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '廣告ID',

`nns_access_type` tinyint(4) NOT NULL COMMENT '0:5m 1:1h 2:24h=1d',

`nns_access_day` date NOT NULL COMMENT '哪一天的',

`nns_access_index` int(11) NOT NULL COMMENT '間隔數,5m 1h 1d=24h',

`nns_access_count` int(11) NOT NULL

) ENGINE=InnoDb DEFAULT CHARSET=utf8;

這步是OK的.

接著因為項目擴展,增加了1個字段,同時需要修改一個表的字段名和另外幾個表的default 默認值和類型

ALTER?TABLE?`nns_ad_log_count`?CHANGE?`nns_id`?`nns_ad_id`?CHAR(?32?)?CHARACTER?SET?utf8?COLLATE?utf8_unicode_ci?NOT?NULL?COMMENT?'廣告ID';

上面這步,是用的phpmyadmin添加的字段后生成的一句sql, 看上去是沒問題的,復制到word里面,再拿到mysql里面執行一下

報錯了.百思不得其解,

為什么會這樣子呢?

3: 錯誤分析.

生成的sql,是干凈的, 途中同事只粘貼進了word.

于是手寫了一遍這個sql,并且在mysql里面運行 (為了測試,我復制了上面的表結構,并且新建了一個測試的表`nns_ad_log_count1`)

運行正常

同事只復制了一次,粘貼到了word (libreoffice)

我重復一下他的動作

"1. 先用瀏覽器打開phpmyadmin,在phpmyadmin里面直接修改一次,產生sql語句"

"2. 在phpmyadmin 里面,復制生成的sql到系統的剪貼板緩存"

"3. 粘貼進word"

"4. 重復其他的修改操作,重復1,2,3步"

"5. 把整個word發送給我"

"6. 我把word里面的sql拷貝出來,運行 "

"7. 報錯"

打開word,發現sql的語句的空格在word里面高亮了

但是在mysql里面直接執行并沒能看見這個東西,在phpmyadmin里面執行上面的sql

空格顯示出來了,原來是這個?

自此問題已經明了.sql語句在復制到word后給污染了. 但是為什么會這樣子污染呢? 發現只有word粘貼進去后,會把utf8下的空格換成?

這個應該是linux下的office工具的問題, 這里就不再陳述了

4: 后記, 在linux下做開發提交的sql語句,

建議復制到vim里面查看詳細的格式,

或者更簡單的,復制出來后,在瀏覽器地址欄粘貼一次再復制進word來提交文檔.以免sql變臟出錯.

總結

以上是生活随笔為你收集整理的linux系统sql语句报错_在linux下写的mysql无法插入,sql语句在复制中变'脏'了.的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。