首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLSTATE[42S02]:未找到基表或视图: 1146表'dbs1056212.User_Logs‘不存在

问SQLSTATE[42S02]:未找到基表或视图: 1146表'dbs1056212.User_Logs‘不存在
EN

Stack Overflow用户
提问于 2020-12-07 12:06:43
回答 1查看 1.6K关注 0票数 1

我有具有以下内容的SQL文件:

代码语言:javascript
复制
CREATE TABLE `Task_type` (
  `id` int(10) UNSIGNED NOT NULL,
  `name` varchar(255) NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `Task_type`
--

INSERT INTO `Task_type` (`id`, `name`, `created_at`, `updated_at`) VALUES
(1, 'Task', NULL, NULL),
(2, 'Meeting', NULL, NULL),
(3, 'Phone call', NULL, NULL),
(4, 'Task', NULL, NULL),
(5, 'Meeting', NULL, NULL),
(6, 'Phone call', NULL, NULL);

--
-- Table structure for table `User_logs`
--

CREATE TABLE `User_logs` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `user_id` bigint(20) NOT NULL,
  `login` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `logout` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `logged_out` tinyint(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `User_logs`
--

INSERT INTO `User_logs` (`id`, `user_id`, `login`, `logout`, `time`, `logged_out`) VALUES
(42, 2, '2020-10-14 16:12:37', '2020-10-14 19:09:14', '2020-10-14 16:09:08', 1),
(43, 2, '2020-10-14 20:10:38', '2020-10-15 00:43:04', '2020-10-14 21:43:04', 0),
(44, 1, '2020-10-14 20:46:10', '2020-10-14 20:56:36', '2020-10-14 17:56:17', 1),
(45, 1, '2020-10-14 21:03:09', '2020-10-14 21:06:15', '2020-10-14 18:06:15', 0),
(46, 2, '2020-10-15 07:15:30', '2020-10-15 07:24:38', '2020-10-15 04:19:29', 1),
(47, 2, '2020-10-15 07:24:49', '2020-10-15 07:49:45', '2020-10-15 04:48:48', 1),
(48, 2, '2020-10-15 07:51:25', '2020-10-15 07:57:36', '2020-10-15 04:57:36', 0),
(49, 2, '2020-11-01 21:43:35', '2020-11-01 22:02:26', '2020-11-01 20:02:26', 0);

但是,我得到了以下错误:

SQLSTATE42S02:基本表或视图未找到: 1146表'dbs1056212.User_Logs‘不存在(SQL: insert insert User_Logs (user_id,logged_out)值(1,0))

我被告知,表名应该以大写字母开头,破折号后面的部分可以以小写字母开头,正如您看到的表Task_types命名策略一样,create和insert与User_logs完全相同,它不会引起任何例外,只有表User_logs才会引发这个问题。

该怎么办呢?

数据库为MySQL

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-07 13:12:03

您将表创建为User_logs。

错误消息说它找不到User_Logs。

这些是不一样的,因为"l“的情况不同。有时这会在MySQL中产生不同,有时它并不取决于系统变量lower_case_table_names的值。

重要的考虑因素在文档中很深

值0。。。使用CREATE或CREATE语句中指定的字母将表和数据库名称存储在磁盘上。名称比较是区分大小写的。

这是Unix系统上系统变量lower_case_table_names的默认设置(但在类似Unix的MacOs上不是这样)。您可以在创建数据库时重写它,但这是非常不寻常的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65181450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档