mysql - [42000][1064] SQL 错误:无法在 DataGrip 中执行新表。
问题描述
create table Users
(
AttendeeID varchar not null,
FRAG boolean null,
FirstName string null,
LastName string null,
BadgeName varchar null,
BadgeNumber int not null,
DateOfBirth date null,
EmailAddress int not null,
Password password null,
PrivacyPolicy boolean null,
TermsConditions boolean null
);
create unique index Users_AttendeeID_uindex
on Users (AttendeeID);
create unique index Users_BadgeNumber_uindex
on Users (BadgeNumber);
create unique index Users_EmailAddress_uindex
on Users (EmailAddress);
alter table Users
add constraint Users_pk
primary key (AttendeeID);
所以,我正在学习数据库,并且我正在为我的 dbms 使用 Datagrip,但是当我尝试执行此操作时,我收到了以下错误:
[42000][1064] 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的“not null, FRAG boolean null, FirstName string null, LastName string null, Ba”附近使用正确的语法。
最初代码读取不为空,所以我将其更改为空,不明白问题是什么。我在以前的问题中没有找到答案,任何帮助都会很棒。谢谢。
解决方案
varchar
需要有一个指定的长度,比如varchar(30)
30 个字符。
string
不是类型,使用varchar(LENGTH)
.
password
不是一种类型,varbinary(LENGTH)
因为我假设您做正确的事情并使用加盐哈希。
推荐阅读
- angular - 发生http错误时的角度http处理json响应
- typescript - ESLint、TypeScript、Vue 和 WebPack Encore:无法禁用 ESLint 规则
- javascript - 如何更改单选按钮选中属性
- dax - 基于部门名称添加错误机会的 DAX 措施
- linux - 我正在使用 xargs,但参数列表太长
- java - Spring Boot 应用程序使用 100% CPU
- angular - 赛普拉斯测试似乎“忽略”了 mat-paginator pageSize
- javascript - Vue js/Javascript Objects.assign() 不工作
- java - 如何在 java 中使用 runtime.exec 锁定、关闭、重新启动和挂起 pc?
- c# - 如何在 Unity 中向前移动一个对象?