MySQL Workbench遇Error Code:1049错误:未知数据库'dbo'
解决MySQL Error Code: 1049及后续操作失败问题
问题根源
dbo前缀误用:dbo是SQL Server的默认架构命名,MySQL不采用这种方式。你写的dbo.Department会被MySQL误认为要访问dbo数据库下的表,但你并没有创建这个数据库,因此触发1049错误。- 字段拼写错误:建
Department表时,DeprartmentId多写了一个r,正确应为DepartmentId,这个拼写错误会导致后续插入、查询操作失败。 - 类型适配问题:MySQL没有专门的
nvarchar类型,使用varchar即可(只要数据库编码设为utf8mb4,就能完全支持Unicode字符,和SQL Server的nvarchar效果一致)。
修正后的完整代码
use employeedb; create table Department( DepartmentId int AUTO_INCREMENT, DepartmentName varchar(500), PRIMARY KEY(DepartmentId) ); insert into Department(DepartmentName) values ('IT'); insert into Department(DepartmentName) values ('Support'); create table Employee( EmployeeId int AUTO_INCREMENT, EmployeeName varchar(500), Department varchar(500), DateOfJoining datetime, PhotoFileName varchar(500), PRIMARY KEY(EmployeeId) ); insert into Employee(EmployeeName,Department,DateOfJoining,PhotoFileName) values ('John','IT','2022-11-27','anonymous.png'); select * from Employee;
验证操作
执行完修正代码后,可以用以下命令确认结果:
-- 查看当前数据库的所有表 show tables; -- 检查部门表数据 select * from Department; -- 检查员工表数据 select * from Employee;
内容的提问来源于stack exchange,提问作者Chizy
相关产品推荐
相关产品推荐

