【发布时间】:2021-12-03 08:49:02
【问题描述】:
我正在尝试在 MySQL 中执行 PL/SQL 语句。但是,当我尝试创建表时,它会显示语法错误。我收到以下错误
CREATE TABLE supplier(supid NUMBER(5) PRIMARY KEY, suppname VARCHAR2(15));
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NUMBER(5) PRIMARY KEY, suppname VARCHAR2(15))' at line 1
完整代码如下:
DROP TABLE supplier;
DROP SEQUENCE practical2_sequence;
*/
CREATE TABLE supplier(supid NUMBER(5) PRIMARY KEY, suppname VARCHAR2(15));
CREATE SEQUENCE practical2_sequence START WITH 1 MAXVALUE 100;
BEGIN
LOOP
INSERT INTO supplier VALUES(practical2_sequence.NEXTVAL, 1);
EXIT WHEN practical2_sequence.CURRVAL >= 100;
END LOOP;
END;
/
SELECT * FROM supplier;
帮帮我,因为我在 MySQL 方面没有经验。
【问题讨论】:
-
NUMBER不是有效的数据类型。那应该是INT(5) -
PL/SQL用于 Oracle,而不是 MySQL。 -
MySQL 没有
SEQUENCE。您使用AUTO_INCREMENT属性声明 ID。 -
mysql中没有varchar2或number。不过有一个 varchar 和 numeric。
标签: mysql