mysql 1243_MySQL 5.5常用信息函数

CONNECTION_ID()

显示连接ID(线程ID)

mysql> SELECT CONNECTION_ID();

+-----------------+

| CONNECTION_ID() |

+-----------------+

|              50 |

+-----------------+

1 row in set (0.00 sec)

CURRENT_USER()

显当前客户端连接的用户名和主机名

mysql> SELECT CURRENT_USER();

+------------------+

| CURRENT_USER()   |

+------------------+

| system@localhost |

+------------------+

1 row in set (0.00 sec)

DATABASE()

显示当前连接的数据库名称

mysql> SELECT DATABASE();

+--------------------+

| DATABASE()         |

+--------------------+

| information_schema |

+--------------------+

1 row in set (0.00 sec)

FOUND_ROWS()

显示SELECT语句的返回行数,忽略LIMIT语句,在存储过程里面很有用。

SQL_CALC_FOUND_ROWS告诉MySQL计算结果集中的行数,忽略LIMIT语句,行数可以通过SELECT FOUND_ROWS()来查询出

mysql> select * from dept;

+--------+------------+----------+

| DEPTNO | DNAME      | LOC      |

+--------+------------+----------+

|     10 | ACCOUNTING | NEW YORK |

|     20 | RESEARCH   | DALLAS   |

|     30 | SALES      | CHICAGO  |

|     40 | OPERATIONS | BOSTON   |

+--------+------------+----------+

4 rows in set (0.00 sec)

mysql> SELECT SQL_CALC_FOUND_ROWS * FROM dept ORDER BY 1 limit 2;

+--------+------------+----------+

| DEPTNO | DNAME      | LOC      |

+--------+------------+----------+

|     10 | ACCOUNTING | NEW YORK |

|     20 | RESEARCH   | DALLAS   |

+--------+------------+----------+

2 rows in set (0.00 sec)

mysql> SELECT FOUND_ROWS();

+--------------+

| FOUND_ROWS() |

+--------------+

|            4 |

+--------------+

1 row in set (0.00 sec)

ROW_COUNT()

在MySQL 5.5.5版本之前,ROW_COUNT()返回上一条UPDATE, DELETE,或INSERT语句的行数,对于其他语句,这个返回值没有意义。

在MySQL 5.5.5版本,ROW_COUNT()返回下列值:

DDL语句,例如CREATE TABLE 或 DROP TABLE:0。

DML语句,例如UPDATE, INSERT, 或 DELETE,ALTER TABLE 、 LOAD DATA INFILE和SELECT * FROM table_name INTO OUTFILE 'file_name':实际影响的行。

SELECT语句:-1

SIGNAL 语句: 0

mysql> select * from t20;

+------+

| id   |

+------+

|  200 |

|  100 |

+------+

2 rows in set (0.28 sec)

mysql> insert into t20 select * from t20;

Query OK, 2 rows affected (0.20 sec)

Records: 2  Duplicates: 0  Warnings: 0

mysql> SELECT ROW_COUNT();

+-------------+

| ROW_COUNT() |

+-------------+

|           2 |

+-------------+

1 row in set (0.00 sec)

SCHEMA()

显示连接的数据库名称

mysql> SELECT SCHEMA();

+----------+

| SCHEMA() |

+----------+

| fire     |

+----------+

1 row in set (0.00 sec)

USER()、SESSION_USER()、SYSTEM_USER()

显当前客户端连接的用户名和主机名

mysql> SELECT SESSION_USER();

+------------------+

| SESSION_USER()   |

+------------------+

| system@localhost |

+------------------+

1 row in set (0.00 sec)

mysql> SELECT SYSTEM_USER();

+------------------+

| SYSTEM_USER()    |

+------------------+

| system@localhost |

+------------------+

1 row in set (0.00 sec)

mysql> SELECT USER();

+------------------+

| USER()           |

+------------------+

| system@localhost |

+------------------+

1 row in set (0.00 sec)

VERSION()

显示数据库版本

mysql> SELECT VERSION();

+------------+

| VERSION()  |

+------------+

| 5.5.48-log |

+------------+

1 row in set (0.00 sec)

LAST_INSERT_ID()

自增字段执行上一次的INSERT语句的值

mysql> create table test(id int auto_increment not null primary key, name varchar(15));

Query OK, 0 rows affected (0.08 sec)

mysql> desc test;

+-------+-------------+------+-----+---------+----------------+

| Field | Type        | Null | Key | Default | Extra          |

+-------+-------------+------+-----+---------+----------------+

| id    | int(11)     | NO   | PRI | NULL    | auto_increment |

| name  | varchar(15) | YES  |     | NULL    |                |

+-------+-------------+------+-----+---------+----------------+

2 rows in set (0.00 sec)

mysql> insert into test(name) values('Neo');

Query OK, 1 row affected (0.00 sec)

mysql> insert into test(name) values('Lily');

Query OK, 1 row affected (0.00 sec)

mysql> select * from test;

+----+------+

| id | name |

+----+------+

|  1 | Neo  |

|  2 | Lily |

+----+------+

2 rows in set (0.00 sec)

mysql> select last_insert_id();

+------------------+

| last_insert_id() |

+------------------+

|                2 |

+------------------+

1 row in set (0.00 sec)

mysql> insert into test(name) values('Trinity');

Query OK, 1 row affected (0.00 sec)

mysql> select last_insert_id();

+------------------+

| last_insert_id() |

+------------------+

|                3 |

+------------------+

1 row in set (0.00 sec)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值