加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL基础 创建bc网站sql执行错误时的控制方式

发布时间:2022-04-06 10:29:53 所属栏目:MySql教程 来源:互联网
导读:行语句的正常执行 搭建bc网站q277.03.4.83.6 比如执行多条正常执行的语句,示例命令如下所示: select version(); select Hello LiuMiao as Greetings; select 20+22 as Result; 使用HereDocument方式执行如下所示: liumiaocn:~ liumiao$ mysql -uroot -p
        行语句的正常执行
 
       搭建bc网站q<277.03.4.83.6>
 
       比如执行多条正常执行的语句,示例命令如下所示:
 
  select version();
 
  select "Hello LiuMiao" as "Greetings";
 
  select 20+22 as Result;
 
使用HereDocument方式执行如下所示:
 
liumiaocn:~ liumiao$ mysql -uroot -proot <<EOF
 
>   select version();
 
>   select "Hello LiuMiao" as "Greetings";
 
>   select 20+22 as Result;
 
> EOF
 
mysql: [Warning] Using a password on the command line interface can be insecure.
 
version()
 
8.0.11
 
Greetings
 
Hello LiuMiao
 
Result
 
42
 
liumiaocn:~ liumiao$
 
多行语句中间出错时的缺省动作
 
Oracle多行语句执行出错时在sqlplus中会继续执行,而在mysql控制台中会怎样呢?我们可以在上述语句中添加一行错误的语法或者命令来进行验证:
 
mysql -uroot -proot <<EOF
 
  select version();
 
  errorcommand;
 
  select "Hello LiuMiao" as "Greetings";
 
  select 20+22 as Result;
 
EOF
 
执行结果如下所示
 
liumiaocn:~ liumiao$ mysql -uroot -proot <<EOF
 
>   select version();
 
>   errorcommand;
 
>   select "Hello LiuMiao" as "Greetings";
 
>   select 20+22 as Result;
 
> EOF
 
mysql: [Warning] Using a password on the command line interface can be insecure.
 
version()
 
8.0.11
 
ERROR 1064 (42000) at line 2: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'errorcommand' at line 1
 
liumiaocn:~ liumiao$
 
可以看到,缺省情况下碰到错误就停下来了。
 
WHENEVER SQLERROR
 
在oracle中通过WHENEVER SQLERROR来进行控制。语法如下所示
 
WHENEVER SQLERROR {EXIT [SUCCESS | FAILURE | WARNING | n | variable | :BindVariable] [COMMIT | ROLLBACK] | CONTINUE [COMMIT | ROLLBACK | NONE]}

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读