简体   繁体   English

从 phpmyadmin 导入 sql 文件创建错误

[英]Importing sql file from phpmyadmin create error

I have successfully backup sql database.我已经成功备份了 sql 数据库。 But whenever trying to import it shows some error.但是每当尝试导入时,它都会显示一些错误。 Like below:如下所示:

MySQL said: Documentation

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'STORED,
  `purchase_gst` decimal(10,2) NOT NULL,
  `purchase_due` decimal(10,2' at line 8

Here is my code extracted from SQL file:这是我从 SQL 文件中提取的代码:

DROP TABLE IF EXISTS `purchase`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `purchase` (
  `purchase_id` bigint(20) NOT NULL AUTO_INCREMENT,
  `purchase_date` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `purchase_item` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `purchase_rate` decimal(10,2) DEFAULT NULL,
  `purchase_qty` decimal(10,2) NOT NULL,
  `purchase_from` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `purchase_gross` decimal(10,2) GENERATED ALWAYS AS ((`purchase_qty` * `purchase_rate`)) STORED,
  `purchase_gst` decimal(10,2) NOT NULL,
  `purchase_due` decimal(10,2) NOT NULL,
  `purchase_tcost` decimal(10,2) NOT NULL,
  `purchase_net` decimal(10,0) GENERATED ALWAYS AS (round(((`purchase_gross` + `purchase_gst`) + `purchase_tcost`),0)) STORED,
  PRIMARY KEY (`purchase_id`)
) ENGINE=InnoDB AUTO_INCREMENT=372 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

It's depends on your mySql version.这取决于您的 mySql 版本。 This sql syntax error shows below the MySQL 5.7 version.此 sql 语法错误显示在 MySQL 5.7 版本下方。 Please Check this with in MySQL 5.7 version it's working with below code:请在 MySQL 5.7 版本中使用以下代码进行检查:

DROP TABLE IF EXISTS `purchase`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `purchase` (
`purchase_id` bigint(20) NOT NULL AUTO_INCREMENT,
`purchase_date` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`purchase_item` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`purchase_rate` decimal(10,2) DEFAULT NULL,
`purchase_qty` decimal(10,2) NOT NULL,
`purchase_from` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`purchase_gross` decimal(10,2) GENERATED ALWAYS AS (`purchase_qty` * `purchase_rate`) STORED,
`purchase_gst` decimal(10,2) NOT NULL,
`purchase_due` decimal(10,2) NOT NULL,
`purchase_tcost` decimal(10,2) NOT NULL,
`purchase_net` decimal(10,0) GENERATED ALWAYS AS (round(((`purchase_gross` + 
`purchase_gst`) + `purchase_tcost`),0)) STORED,
 PRIMARY KEY (`purchase_id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;`enter code here`

Please check the version of MySQl.This will work on MySQl 5.7 and above versions.请检查 MySQl 的版本。这将适用于 MySQl 5.7 及以上版本。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM