mysql建表時(shí)如果要設(shè)置自動(dòng)遞增(auto_increment),必須是主鍵(PRIMARY KEY)設(shè)置,不能為NULL,且只能設(shè)置一個(gè)。
成都創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元陜西做網(wǎng)站,已為上家服務(wù),為陜西各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key。
這個(gè)錯(cuò)誤的意思是:#1075-表定義不正確;只能有一個(gè)自動(dòng)列,必須將其定義為主鍵。
如果出現(xiàn)此錯(cuò)誤需要檢查建表語(yǔ)句,如果設(shè)置了自增,需要把自增字段設(shè)置成主鍵。
擴(kuò)展資料
MYSQL中AUTO_INCREMENT會(huì)在新記錄插入表中時(shí)生成一個(gè)唯一的數(shù)字。希望在每次插入新記錄時(shí),自動(dòng)地創(chuàng)建主鍵字段的值,可以在表中創(chuàng)建一個(gè) auto-increment 字段。
mysql創(chuàng)建自增主鍵表的建表語(yǔ)句舉例:
CREATE TABLE? `tablename` (
`id` int(11) NOT NULL AUTO_INCREMENT , PRIMARY KEY (`id`)
)ENGINE=MyISAM DEFAULT CHARSET=utf8;
有兩個(gè)問(wèn)題
1、參數(shù)中varchar要定義幾個(gè)字符,如varchar(20)
2、mysql的注釋方式?jīng)]有//,只有/**/和#
3、存儲(chǔ)過(guò)程的前后要先定義分隔符DELIMITER ;;
因此最終結(jié)果:
DELIMITER?;;
CREATE?DEFINER=`root`@`%`?PROCEDURE?`NewProc`(IN?`spid`?int,IN?`spprice`?varchar(20),IN?`spnum`?varchar(20))
BEGIN
DECLARE?wareid?INT;?#定義三個(gè)變量?
DECLARE?num1?INT;
DECLARE?num2?INT;
DECLARE?cursor_invent?CURSOR?FOR?SELECT?goodsid?FROM?goods;?/*定義游標(biāo)?返回參數(shù)對(duì)應(yīng)的商品?id*/
OPEN?cursor_invent;
REPEAT
FETCH?cursor_invent?INTO?wareid;?#將id賦值給wareid
IF?wareid=spid?
THEN?
SET?num1=CONVERT(inventnum,SIGNED);?#varchar轉(zhuǎn)化成int
SET?num2=CONVERT(spnum,SIGNED);
UPDATE?invent?SET?inventnum=CONCAT(num1+num2)?WHERE?inventid=spid;?#如果存在同名商品那么原有數(shù)量+現(xiàn)有數(shù)量
ELSE?INSERT?INTO?invent(goodsid,inventnum,inventprice)?values(spid,spprice,spnum);?#不存在就直接插入一條記錄
END?IF;
UNTIL?cursor_invent?END?REPEAT;
CLOSE?cursor_invent;
END
;;
DELIMITER?;
MySQL表中插入數(shù)據(jù)不會(huì)不保存的
只要提示:
Query OK, 0 rows affected (0.00 sec)
說(shuō)明就是插入成功了
要么就是你插錯(cuò)表了。
要么就是你的數(shù)據(jù)庫(kù)的容量不夠了(就是磁盤(pán)空間不足),那也提示報(bào)錯(cuò)的。
你還是要把具體的情況說(shuō)清楚,不然沒(méi)人能回答你這個(gè)問(wèn)題