0

我正在使用 Microsoft SQL Server 2012 Express。MySQL的以下代码在运行查询时给了我错误,谁能指导我如何纠正它?

/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
create database  /*!32312 IF NOT EXISTS*/ `android_api`/*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
use `android_api` ;/** Selecting Database **/
DROP TABLE IF EXISTS `users`;
/** Creating Users Table **/
create table `users`(
   uid int(11) primary key auto_increment,
   unique_id varchar(23) not null unique,
   name varchar(50) not null,
   email varchar(100) not null unique,
   encrypted_password varchar(80) not null,
   salt varchar(10) not null,
   created_at datetime,
   updated_at datetime null
)ENGINE=InnoDB AUTO_INCREMENT=877888 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

DROP TABLE IF EXISTS `events`;
/** Creating Users Table **/
create table `events`(
   eid int(11) primary key auto_increment,
   unique_id varchar(23) not null unique,
   title varchar(50) not null,
   date varchar(50) not null,
   time varchar(50) not null,
   location varchar(100) not null,
   person varchar(20) not null,
   phone varchar(20) not null,
   budget varchar(20) not null,
   comments varchar(50) not null,
   resource varchar(150) not null,
   uuid varchar(23) not null,
   created_at datetime,
   updated_at datetime null
)ENGINE=InnoDB AUTO_INCREMENT=877888 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
4

3 回答 3

0

MySQL 和 SQL Server 都是使用 SQL 作为交互语言的关系型数据库,但它们并不是 100% 兼容的。

您发布的查询包括 MySQL 特定功能,例如 auto_increment 主键和 InnoDB 数据库引擎。

如果您使用的是 SQL Server,您还可以在此处下载 SQL 2012 Management Studio Express:http: //www.microsoft.com/en-us/download/details.aspx?id=29062这将为您提供一个用于管理的 GUI你的 SQL 和创建你的表。完成这些设置后,您可以查看生成的 SQL 以了解 MS SQL 的外观。

于 2012-10-14T06:46:15.750 回答
0

我假设您正在将数据库从 MySQL 迁移到 SQL Server Express。

如果您还没有尝试过,请使用设置为 mssql 的兼容参数对您的数据库进行 mysqldump。

mysqldump --compatible=mssql

这应该为您提供在 SQL Server Express 上运行的正确语法。

于 2012-10-14T06:49:21.583 回答
0
create database android_api;
GO
use android_api;
GO
create table users(
   uid int identity(877888,1) primary key,
   unique_id varchar(23) not null unique,
   name varchar(50) not null,
   email varchar(100) not null unique,
   encrypted_password varchar(80) not null,
   salt varchar(10) not null,
   created_at datetime,
   updated_at datetime null
);
GO
create table events(
   eid int identity(877888,1) primary key,
   unique_id varchar(23) not null unique,
   title varchar(50) not null,
   date varchar(50) not null,
   time varchar(50) not null,
   location varchar(100) not null,
   person varchar(20) not null,
   phone varchar(20) not null,
   budget varchar(20) not null,
   comments varchar(50) not null,
   resource varchar(150) not null,
   uuid varchar(23) not null,
   created_at datetime,
   updated_at datetime null
);
GO
于 2012-10-14T07:24:56.577 回答