通过sql语句如何检测到数据库的名字-理会精神

当然一句话就可以搞定

select database();

but the main idea  is the way of thinking. 


mysql> select length("ac");
+--------------+
| length("ac") |
+--------------+
|            2 |
+--------------+
1 row in set

mysql> select length(database());
+--------------------+
| length(database()) |
+--------------------+
|                  6 |
+--------------------+
1 row in set

mysql> select database();
+------------+
| database() |
+------------+
| aldapp     |
+------------+
1 row in set

mysql> select ASCII('A');
+------------+
| ASCII('A') |
+------------+
|         65 |
+------------+
1 row in set

mysql> Select ascii(substr(database(),2,1)) = 101;
+-------------------------------------+
| ascii(substr(database(),2,1)) = 101 |
+-------------------------------------+
|                                   0 |
+-------------------------------------+
1 row in set

mysql> Select ascii(substr(database(),2,1))=69;
+----------------------------------+
| ascii(substr(database(),2,1))=69 |
+----------------------------------+
|                                0 |
+----------------------------------+
1 row in set

mysql> Select (substr(database(),2,1));
+--------------------------+
| (substr(database(),2,1)) |
+--------------------------+
| l                        |
+--------------------------+
1 row in set

mysql> Select ascii(substr(database(),2,1));
+-------------------------------+
| ascii(substr(database(),2,1)) |
+-------------------------------+
|                           108 |
+-------------------------------+
1 row in set

mysql> select ASCII('a');
+------------+
| ASCII('a') |
+------------+
|         97 |
+------------+
1 row in set

mysql> select ASCII('l');
+------------+
| ASCII('l') |
+------------+
|        108 |
+------------+
1 row in set

mysql> 第二个为l,因为数据库名ald***


mysql> Select ascii(substr(database(),2,1))=108;
+-----------------------------------+
| ascii(substr(database(),2,1))=108 |
+-----------------------------------+
|                                 1 |
+-----------------------------------+

正确返回1



mysql> Select if((select database())='aldapp',1,2);
+--------------------------------------+
| if((select database())='aldapp',1,2) |
+--------------------------------------+
|                                    1 |
+--------------------------------------+
1 row in set

正确返回1



mysql> Select if((select database())='aldapp',1,2);
+--------------------------------------+
| if((select database())='aldapp',1,2) |
+--------------------------------------+
|                                    1 |
+--------------------------------------+
1 row in set


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值