十年網站開發(fā)經驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網站問題一站解決
你有沒有遇到過這種情況,你的sql語法檢查了好幾遍都對,但mysql數據表就是無法插入,提示語法有問題,其實這是因為mysql的數據表名默認不支持特殊符號,比如? -? ?*? ? .? 等符號,如果你一定要使用當然也可以,但這時你需要將帶有特殊符號的數據表用鍵盤tab建上方的` `括起來,舉個例子:
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名申請、虛擬空間、營銷軟件、網站建設、岱岳網站維護、網站推廣。
insert into `table-name` set id=1;
我在插入數據時將帶有-符號的表名用``括起來了,這樣就可以插入成功了,否則會一直提示你語法錯誤。
注意一定要是tab鍵上方的``,不是單引號' '。
如何導入.sql文件到mysql中
首先:建立數據庫,用這個命令:create database dbname; 其中dbname是數據庫名稱
c:\mysql\binmysql -u 用戶名 -p 數據庫名 c:/test.sql
中間的空格是一個空格位。
例如:c:\program files\mysql\binmysql -u root -p myrosz c:/myro.sql
enter password: ****
稍等一會,就可以導入數據表。
用shell腳本通過while循環(huán)批量生成mysql測試數據的方法。
1、很多時候需要在mysql表中插入大量測試數據,下面分享一個用shell腳本通過while循環(huán)批量生成mysql測試數據的方法,你只需要根據你自己的表結構來生成sql語句即可。
復制代碼代碼如下:
#!/bin/bash
i=1;
MAX_INSERT_ROW_COUNT=$1;
while [ $i -le $MAX_INSERT_ROW_COUNT ]
do
mysql -uroot -proot afs -e "insert into afs_test (name,age,createTime) values ('HELLO$i',$i % 99,NOW());"
d=$(date +%M-%d\ %H\:%m\:%S)
echo "INSERT HELLO $i @@ $d"
i=$(($i+1))
sleep 0.05
done
exit 0
2、假定上面的shell腳本保存為create-data.sh,可以通過下面的命令來生成數據:
復制代碼代碼如下:sh create-data.sh 10000。(參數10000是要生成的數據條數。)
這里以前面新建的 teacher 表為例, teacher 表的字段為 name、age、id_number,向教師表新增一條數據命令如下:
執(zhí)行下上面的這條命令,執(zhí)行結果如下圖:
其中 “INSERT INTO” 關鍵字表示這條命令是插入數據命令,“teacher” 是要插入數據的目標數據表名稱,“name,age,id_number” 是表的字段名,“VALUES” 后面跟的是字段對應的值,值的順序和前面字段的順序一致。
上面介紹了如何向數據表插入一條數據,這里需要查看數據表已有的所有數據:
執(zhí)行結果如下圖:
“SELECT” 關鍵字表示這條命令是查詢相關命令,"*" 則代表要查詢出表中所有的數據。“FROM teacher” 則表明要查詢的是哪一個數據表。
關于 SELECT 查詢語句還有很多中使用場景,比如我們要查詢出表中 age 字段的值大于 20 歲的數據。關于 SELECT 的其他使用我們會在后面的小節(jié)詳細講解。
新增多條數據命令:
執(zhí)行結果如下圖:
本小節(jié)介紹了如圖向數據表插入一條數據、查詢表所有數據、向表插入多條數據。前面介紹數據表的設計規(guī)范時介紹了數據表的第二設計范式要求所有數據表需要有業(yè)務主鍵。需要注意的是本節(jié)中 teacher 表的業(yè)務主鍵為自增 id,因此插入數據的時候不需要插入 id 字段的值。id 字段的默認是從 1 開始自增的,也可以指定自增起始值,如下建表語句,id自增值是從100開始的:
其中 “AUTO_INCREMENT=100” 表示自增主鍵 id 的值默認從 100 開始自增加的。