我编写了一个包含以下内容的sql脚本:
CREATE DATABASE IF NOT EXISTS stock_trading;
USE stock_trading;
CREATE TABLE IF NOT EXISTS transactions(
user_name VARCHAR(30) NOT NULL,
passwrd BINARY(64) NOT NULL,
balance_cash BIGINT NOT NULL DEFAULT 100000,
PRIMARY KEY (user_name,passwrd),
)ENGINE=InnoDB;
每当我尝试在SQL命令提示符下运行它时,它会一直将错误消除为:
文件中第5行的错误1064(42000):'db_script.sql':您的SQL语法中有错误;查看与您的MariaDB服务器版本对应的手册,以便在第5行附近使用正确的语法')ENGINE = InnoDB'
脚本似乎是正确的,但我不知道为什么它一直给出这个错误。
其他信息:
操作系统:Arch Linux
数据库:MariaDB
答案 0 :(得分:3)
您在表格定义的末尾有一个迷路逗号:
PRIMARY KEY (user_name,passwrd),
^^^ remove this
您的全表定义:
CREATE TABLE IF NOT EXISTS transactions(
user_name VARCHAR(30) NOT NULL,
passwrd BINARY(64) NOT NULL,
balance_cash BIGINT NOT NULL DEFAULT 100000,
PRIMARY KEY (user_name, passwrd)
) ENGINE=InnoDB;