我在【Navicat for MySQL】中创建了一个表,但无法完成它。
这是我的代码。
CREATE table `成绩表`(
`学号` char(10),
`课号` char(10),
`成绩` int,
PRIMARY KEY(`学号`, `课号`)
)
error:
[SQL] CREATE table `成绩表`(
`学号` char(10),
`课号` char(10),
`成绩` int,
PRIMARY KEY(`学号`, `课号`)
)
[Err] 1005 - Can't create table '成绩表' (errno: 22)
答案 0 :(得分:1)
根据MySQL manual,它可以处理从U + 0001到U + FFFF的unicode表格和列名称 - 所以你看到的原因很可能需要一些挖掘:
错误消息errno
为22
,其中IIRC转换为invalid argument
的操作系统错误代码。这反过来意味着在MySQL本身深处的某个地方有一些函数被调用,它无法接受。
我怀疑所调用的函数来自C运行时和/或操作系统,并且它很可能与文件系统相关。
这反过来意味着它是一个错误或MySQL与你正在使用的OS /文件系统/设置交互的一些模糊行为......
我建议绝对联系MySQL / Oracle,因为那是恕我直言,远远超出SO可以处理的......