这些代码可以在MySQL的错误日志、返回的错误信息或异常处理程序中找到。 sqlstate_value 定义:sqlstate_value 是一个由五个字符组成的字符串,用于表示SQL标准的错误代码。...1045:不能连接数据库,用户名或密码错误。 1048:字段不能为空。 1049:数据库不存在。 1050:数据表已存在。 1051:数据表不存在。 1054:字段不存在。...sqlstate_value:一个五位数的SQLSTATE代码,用于表示SQL标准的错误或警告类型。...; 这里,处理程序被设置为在SQLSTATE值为’42S02’(表示表或视图不存在)时触发。...1146(也是表示表或视图不存在)。
[HY000] [1049] Unknown database 'blog_test1' blog_test1 表并不存在,所以在 new PDO 的时候就已经直接会抛出异常了。..." var_dump($pdo->errorInfo()); // array(3) { // [0]=> // string(5) "42S02" // [1]=> // int(1146...但其实数据库中并不存在这个表。...[42S02]: Base table or view not found: 1146 Table 'blog_test.aabbcc' doesn't exist 在设置错误处理机制为警告后,PDO...[42S02]: Base table or view not found: 1146 Table 'blog_test.aabbcc' doesn't exist 最后,我们将错误处理机制设置为抛出异常
ERROR 1146 (42S02): Table ‘database.table’ Doesn’t Exist:完美解决方法 摘要 大家好,我是默语!...在今天的技术博客中,我们将探讨 MySQL 数据库中遇到的 ERROR 1146 (42S02): Table 'database.table' doesn't exist 错误。...引言 ERROR 1146 (42S02): Table 'database.table' doesn't exist 错误是 MySQL 数据库中常见的问题之一。...正文内容 错误概述 ERROR 1146 (42S02) 错误表示 MySQL 数据库中缺少指定的表。这可能是由于表名错误、表未创建或表已被删除等原因造成的。...表格总结 技术点 描述 ERROR 1146 (42S02) 错误 表 database.table 在指定的数据库中不存在。
CONTAINS SQL表示子程序包含SQL语句,但不包含读或写数据的语句;NO SQL表示子程序中不包含SQL语句;READS SQL DATA表示子程序中包含读数据的语句;MODIFIES SQL...【示例14-5】 下面从employee表中查询id为2的记录,将该记录的d_id值赋给变量my_sql。...例如ERROR 1146 (42S02)中,sqlstate_value值是42S02,mysql_error_code值是1146。...【示例14-6】 下面定义"ERROR 1146 (42S02)"这个错误,名称为can_not_find。...SQLEXCEPTION表示所有没有被SQLWARNING或NOT FOUND捕获的sqlstate_value值。sp_statement表示一些存储过程或函数的执行语句。
CONTAINS SQL表示子程序包含SQL语句,但不包含读或写数据的语句;NO SQL表示子程序中不包含SQL语句;READS SQL DATA表示子程序中包含读数据的语句;MODIFIES SQL...【示例5】 下面从employee表中查询id为2的记录,将该记录的d_id值赋给变量my_sql。...例如ERROR 1146 (42S02)中,sqlstate_value值是42S02,mysql_error_code值是1146。...【示例6】 下面定义"ERROR 1146 (42S02)"这个错误,名称为can_not_find。...SQLEXCEPTION表示所有没有被SQLWARNING或NOT FOUND捕获的sqlstate_value值。sp_statement表示一些存储过程或函数的执行语句。
CONTAINS SQL表示子程序包含SQL语句,但不包含读或写数据的语句;NO SQL表示子程序中不包含SQL语句;READS SQL DATA表示子程序中包含读数据的语句;MODIFIES SQL...【示例14-5】 下面从employee表中查询id为2的记录,将该记录的d_id值赋给变量my_sql。...例如ERROR 1146 (42S02)中,sqlstate_value值是42S02,mysql_error_code值是1146。...【示例14-6】 下面定义"ERROR 1146 (42S02)"这个错误,名称为can_not_find。可以用两种不同的方法来定义,代码如下: 1....SQLEXCEPTION表示所有没有被SQLWARNING或NOT FOUND捕获的sqlstate_value值。sp_statement表示一些存储过程或函数的执行语句。
(users),部分代码用的驼峰命名法(Users),结果纯小写的应用执行时全部报错: mysql> SELECT id,username FROM users; ERROR 1146 (42S02)...和 Users.ibd,没有 users 表相关文件,所以就报testdb.users表不存在的错误。...mysql> select * from users; ERROR 1146 (42S02): Table 'testdb.users' doesn't exist mysql> show global...; ERROR 1146 (42S02): Table 'testdb.users' doesn't exist mysql> select * from Users; ERROR 1146 (42S02...* from `Users`; ERROR 1146 (42S02): Table 'testdb.users' doesn't exist 此时查数据字典也是异常的(查询不到记录) mysql>
从提示来看,mysql.innodb_table_stats这张表是不存在,但是执行了show tables显式存在这张表, mysql> show tables; +----------------...(42S02): Unknown error 1146 1146的错误,表不存在, P.S....https://dev.mysql.com/doc/mysql-errors/5.7/en/server-error-reference.html 有点懵了,这张表到底存在不存在?...table_name) ) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0"; 但是执行提示,还是说这张表不存在...(42S02): Unknown error 1146 此时,我们就可以用到运维领域的第一法宝 - 重启,再次执行, mysql> CREATE TABLE innodb_table_stats (
[42S02]: Base table or view not found: 1146 Table 'blog_test.tran_innodb2' doesn't exist 假设这两个表需要同时更新...在这时,就需要事务能力的帮助,让我们能够让两个表要么同时成功,要么同时失败。...values ('Joe', 12)"); $pdo->exec("insert into tran_innodb2 (name, age) values ('Joe', 12)"); // 不存在的表...$e->getMessage(), PHP_EOL; // Failed: SQLSTATE[42S02]: Base table or view not found: 1146 Table '...在这里我们需要注意的是,PDO 对象最好指定错误模式为抛出异常,如果不指定错误模式的话,事务中出现的错误也不会直接报错,而是返回错误码,我们需要通过错误码来确定是否提交或回滚。
0168A 在数据源上找不到源过程的程序包主体,或者它无效。01H51 “MQSeries 应用程序消息传递接口”消息被截断。01H52 例程的执行已完成,但是执行期间至少遇到了一个错误或警告。...类代码 20 找不到 CASE 语句的条件 表 15. 类代码 20:找不到 Case 语句的条件 SQLSTATE 值 含义20000 找不到 CASE 语句的条件。...类代码 26 无效 SQL 语句标识 表 21. 类代码 26:无效 SQL 语句标识 SQLSTATE 值 含义26501 标识的语句不存在。 类代码 27 触发的数据更改违例 表 22....42742 类型表或带类型视图层次结构中已存在同类子表或子视图。42743 在索引扩展名中未找到搜索方法。 42744 在变换组中未定义 TO SQL 或 FROM SQL 变换函数。...42742 类型表或带类型视图层次结构中已存在同类子表或子视图。 42743 在索引扩展名中未找到搜索方法。 42744 在变换组中未定义 TO SQL 或 FROM SQL 变换函数。
问题描述: 一开发同事在linux下调一个程序老是报错说找不到表,但是登陆mysql,show tables查看明明是已经创建了这张表的!!...(42S02): Table 'haun_db.opHistory' doesn't exist mysql> desc opHistory_queue; ERROR 1146 (42S02): Table...'haun_db.opHistory_queue' doesn't exist mysql> desc opHistory_queue_result_log; ERROR 1146 (42S02):...也就是说,mysql设置为不分区大小写后,创建库或表时,不管创建时使用大写字母,创建成功后,都是强制以小写保存!...后来运维同事又将mysql改成不分区大小写设置了,此时mysql都是强制以小写保存的表,所以开发后面再次在程序里引用这张表的时候,就会报错说不存在!
数据库对象可以包括表、默认约束、规则、视图、触发器以及存储过程等。不同数据库对象,其执行语句(如 CREATE 和 DROP )的语法形式也不同。...(1) INSERT 语句:用于向已经存在的表或视图中插入新的数据。(2) SELECT 语句:用于查询表或视图中的数据。(3) UPDATE 语句:用于更新表或视图中的数据。...(4) DELETE 语句:用于删除表或视图中的数据。3.数据控制语言数据控制语言( Data Control Language , DCL )用于安全管理,确定哪些用户可以查或修改数据库中的数据。...例如 ERROR 1146(42S02) 中,下面定义“error 1089 (HU123)”这个错误,名称为 can_not_find。...下面是定义处理程序的几种方式,代码如下://方法一:捕获 sqlstate_valuedeclare continue handler for sqlstate '42s02' set @info='can
) 消息:对于'%s',视图'%s'不存在。...· 错误:1051 SQLSTATE: 42S02 (ER_BAD_TABLE_ERROR) 消息:未知表'%s'。...SET SQL_BIG_SELECTS=1或SET SQL_MAX_JOIN_SIZE=#。...· 错误:1146 SQLSTATE: 42S02 (ER_NO_SUCH_TABLE) 消息:表'%s.%s'不存在。...· 错误:1356 SQLSTATE: HY000 (ER_VIEW_INVALID) 消息:视图'%s.%s'引用了无效的表、列、或函数,或视图的定义程序/调用程序缺少使用它们的权限。
: s1.000011 Relay_Log_Pos: 630 Relay_Master_Log_File: master-bin.000004 Slave_IO_Running: Yes Slave_SQL_Running...: Yes Replicate_Do_DB: Replicate_Ignore_DB: test 查看从库状态也显示此项配置 1:在忽略不同步的库不存在的情况下 在配置文件指定主从库都不存在的库,然后在主库中创建这个库...(42S02): Table 'test001.test' doesn't exist mysql> use test001; Database changed mysql> show tables;...2:测试主从都不存在的库同步 ?...(42S02) at line 1: Table 'test001.test001' doesn't exist
SESSION的时候,事务级的临时表也会被自动截断)。...视图只有逻辑定义。每次使用的时候, 只是重新执行SQL. 视图是从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。...视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。 视图看上去非常象数据库的物理表,对它的操作同任何其它的表一样。...当通过视图修改数据时,实际上是在改变基表中的数据;相反地,基表数据的改变也会自动反映在由基表产生的视图中。由于逻辑上的原因,有些Oracle视图可以修改对应的基表,有些则不能(仅仅能查询)。...as select "Users_Id","Goods_Id","Tr_Num" from Transaction_Log order by "Tr_Id"; PL/SQL程序块 PL/SQL程序块是
mysql> show databases; +----------+ | DATABASE | +----------+ | cctest | +----------+ 1 row in set...completion of table and column names You can turn off this feature to get a quicker startup with -A Database...| | catworld4 | +------------------+ 2 rows in set (0.00 sec) mysql> desc catworld4; ERROR 1146...(42S02): Table 'my3.catworld4' doesn't exist mysql> Tip: 此时在后端真实库里,是找不到这两张表的 这张表是要我们手动创建的,可以有两种方式 在每个数据节点里手动创建出一样的数据表...rows in set (0.05 sec) mysql> explain desc catworld4; +-----------+----------------+ | DATA_NODE | SQL
MySQL MySQL管理之数据类型 9 MySQL MySQL管理之索引 10 MySQL MySQL管理之事务管理 11 MySQL MySQL管理之存储过程 12 MySQL MySQL管理之视图...table_expr:表示查询条件表达式,包括表名称和WHERE子句。...案例: //方法一:捕获sqlstate_value DECLARE CONTINUE HANDLER FOR SQLSTATE `42s02` SET @info=`NO_SUCH_TABLE`; /...statement_list:表示SQL语句列表,可以包括一个或多个语句。...CONTAINS SQL:表示子程序包含SQL语句,但不包含读或写数据的语句。 NO SQL:表示子程序中不包含SQL语句。 READS SQL DATA:表示子程序中包含读数据的语句。
use test;mysql> show tables;+----------------+| Tables_in_test |+----------------+| person || users...备份单个表的时候 恢复的时候记得带上数据库名称 方式1:只备份test数据库的person表mysqldump -uroot -p'Abc-1234' test person > /backup/test_person.sql...> drop table test.person;Query OK, 0 rows affected (0.01 sec)mysql> select * from test.person;ERROR 1146...(42S02): Table 'test.person' doesn't exist恢复数据库中表如果是备份一个表单的话 (恢复的时候记得带上 test库名字)[root@localhost ~]#...database smqnz;Query OK, 0 rows affected (0.00 sec)mysql> drop database test;Query OK, 2 rows affected
: 1146 Last_SQL_Error: Coordinator stopped because there were error(s) in the worker(s...abs_xxx.tmp_xxx_info表不存在,导致同步报错 3、问题分析 3.1、确认灾备集群中目标表是否存在 greatsql> show create table abs_xxx.tmp_xxx_info...; ERROR 1146 (42S02): Table 'abs_xxx.tmp_xxx_info' doesn't exist greatsql> desc abs_xxx.tmp_xxx_info...; ERROR 1146 (42S02): Table 'abs_xxx.tmp_xxx_info' doesn't exist 结论:灾备集群中目标表的确不存在 3.2、根据主从报错信息解析主集群binlog...*/; CREATE DATABASE IF NOT EXISTS `abs_xxx` /*!