시스템 정보 함수
(1) MySQL 버전 번호, 연결 번호, 데이터베이스 이름을 가져오는 함수
(2) 사용자 이름을 가져오는 함수
(3) MySQL의 문자 집합 및 정렬 방법을 가져오는 함수 string
( 4) 자동으로 생성된 마지막 ID 값을 가져오는 함수
(관련 무료 학습 권장 사항: mysql 비디오 튜토리얼 )
(1), MySQL 버전 번호, 연결 수 및 데이터베이스 이름을 가져오는 함수
1.version( )
- version()은 MySQL 서버 버전을 나타내는 문자열을 반환합니다. 이 문자열은 utf8 문자 집합을 사용합니다.
【예】현재 MySQL 버전 번호를 보려면 SQL 문은 다음과 같습니다.
mysql> select version();+-----------+| version() |+-----------+| 8.0.16 |+-----------+1 row in set (0.05 sec)
2.connection_id()
- connection_id()는 MySQL 서버에 대한 현재 연결 수를 반환합니다. 자신의 고유 ID.
【예】현재 사용자의 연결 수를 보려면 SQL 문은 다음과 같습니다.
mysql> select connection_id();+-----------------+| connection_id() |+-----------------+| 18 |+-----------------+1 row in set (0.05 sec)
3.show processlist 및 show full processlist
- processlist 명령의 출력은 어떤 스레드가 실행 중인지 보여줍니다. 현재 연결 수를 모두 볼 수 있을 뿐만 아니라 현재 연결 상태를 볼 수 있어 문제가 있는 쿼리 문 등을 식별하는 데 도움이 됩니다.
- 루트 계정이 있으면 모든 사용자의 현재 연결을 볼 수 있습니다. 다른 일반 계정이 있으면 자신이 차지하는 연결만 볼 수 있습니다. show processlist는 처음 100개의 항목만 나열합니다. 모든 항목을 나열하려면 show full processlist 명령을 사용하십시오.
[예] showprocesslist 명령을 사용하여 현재 사용자의 연결 정보를 출력합니다. SQL 문은 다음과 같습니다.
mysql> show processlist;+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+| Id | User | Host | db | Command | Time | State | Info |+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+| 4 | event_scheduler | localhost | NULL | Daemon | 381487 | Waiting on empty queue | NULL || 18 | root | localhost:60272 | company | Query | 0 | starting | show processlist |+----+-----------------+-----------------+---------+---------+--------+------------------------+------------------+2 rows in set (0.05 sec)
각 열의 의미:
column | meaning |
---|---|
id 열 | MySQL에 대한 사용자 로그인 시스템에서 "연결 ID" |
User | 를 할당하면 현재 사용자가 루트가 아닌 경우 사용자 권한 내에서 MySQL 문을 표시합니다. |
는 이 명령문이 발행된 IP와 포트를 표시하며, 문제가 있는 명령문의 사용자를 추적하는 데 사용할 수 있습니다. | |
이 프로세스가 현재 어떤 데이터베이스에 연결되어 있는지 표시 | |
현재 연결의 실행 명령을 표시합니다. 일반적으로 값은 sleep(sleep)입니다. ), Query, Connect | |
이 상태의 지속 시간을 초 단위로 표시합니다. | |
상태를 표시합니다. 현재 연결을 사용하는 SQL 문 중 상태는 실행 중인 문일 뿐입니다. | |
의 특정 상태는 이 SQL 문을 표시하며 이는 문제 문을 판단하는 데 중요한 문입니다. |
mysql> select database(),schema();+------------+----------+| database() | schema() |+------------+----------+| company | company |+------------+----------+1 row in set (0.00 sec)
(2), 사용자 이름을 가져오는 함수
user(), current_user(), system_user() 및 session_user() 이 함수는 현재 MySQL 서버에서 확인한 사용자 이름과 호스트 이름 조합을 반환합니다. 이 값은 현재 로그인된 사용자의 접근 권한을 결정하는 MySQL 계정에 해당합니다.
- [예제] 현재 로그인된 사용자의 이름을 가져옵니다. SQL 문은 다음과 같습니다.
mysql> select user(),current_user,system_user();+----------------+----------------+----------------+| user() | current_user | system_user() |+----------------+----------------+----------------+| root@localhost | root@localhost | root@localhost |+----------------+----------------+----------------+1 row in set (0.05 sec)
1.charset(str)
[예] charset() 함수를 사용하여 문자열을 반환합니다. 문자 집합, SQL 문은 다음과 같습니다. charset(str)
【例】使用charset()函数返回字符串使用的字符集,SQL语句如下:
mysql> select charset('abc'), -> charset(convert('abc' USING latin1 ) ), -> charset(version());+----------------+----------------------------------------+--------------------+| charset('abc') | charset(convert('abc' USING latin1 ) ) | charset(version()) |+----------------+----------------------------------------+--------------------+| gbk | latin1 | utf8 |+----------------+----------------------------------------+--------------------+1 row in set (0.00 sec)
2.collation(str)
【例】使用collation()函数返回字符串排列方式,SQL语句如下:
mysql> select collation('abc'),collation(convert('abc' USING utf8 ));+------------------+---------------------------------------+| collation('abc') | collation(convert('abc' USING utf8 )) |+------------------+---------------------------------------+| gbk_chinese_ci | utf8_general_ci |+------------------+---------------------------------------+1 row in set, 1 warning (0.05 sec)
(4)、获取最后一个自动生成的ID值的函数
【例】使用select last_insetr_id查看最后一个自动生成的列值,执行过程如下:
①一次插入一条记录
首先创建表worker,其id字段带有auto_increment约束,SQL语句如下:
mysql> create table worker -> ( -> id int auto_increment not null primary key, -> Name varchar(30) -> );Query OK, 0 rows affected (0.21 sec)
分别单独向表worker中插入两条记录:
mysql> insert into worker values(null,'jimy');Query OK, 1 row affected (0.07 sec)mysql> insert into worker values(null,'Tom');Query OK, 1 row affected (0.05 sec)mysql> select * from worker;+----+------+| id | Name |+----+------+| 1 | jimy || 2 | Tom |+----+------+2 rows in set (0.00 sec)
查看已经插入的数据,发现最后一条插入的记录的id字段值为2,使用last_insert_id()查看最后自动生成的id值:
mysql> select last_insert_id();+------------------+| last_insert_id() |+------------------+| 2 |+------------------+1 row in set (0.05 sec)
可以看到,一次插入一条记录时,返回值为最后一条插入记录的id值。
②一次同时插入多条记录
向表中插入多条记录:
mysql> insert into worker values -> (null,'Kevin'), -> (null,'Michal'), -> (null,'NICK');Query OK, 3 rows affected (0.05 sec)Records: 3 Duplicates: 0 Warnings: 0mysql> SELECT * FROM WORKER;+----+--------+| id | Name |+----+--------+| 1 | jimy || 2 | Tom || 3 | Kevin || 4 | Michal || 5 | NICK |+----+--------+5 rows in set (0.00 sec)
使用last_insert_id查看最后自动生成的id值:
mysql> SELECT LAST_INSERT_ID();+------------------+| LAST_INSERT_ID() |+------------------+| 3 |+------------------+1 row in set (0.00 sec)
使用一条insert语句插入多个行时,last_insert_id()
只返回插入的第一行数据时产生的值,在这里为插入第3条记录。之所以这样是因为这使依靠其他服务器复制同样的insert语句变得简单。
提示:
-
last_insert_id
是与table无关的,先向表a插入数据,再向表b插入数据,last_insert_id
rrreee 2.
collation(str)
[예] 문자열 배열을 반환하려면 collation() 함수를 사용하세요. SQL 문은 다음과 같습니다. [예제] select last_insetr_id를 사용하여 마지막 자동 생성된 열 값을 확인하는 방법은 다음과 같습니다.🎜①한 번에 하나의 레코드를 삽입합니다🎜 먼저 id 필드에 auto_increment 제약 조건이 있는 테이블 워커를 만듭니다. SQL 문은 다음과 같습니다. 🎜rrreee🎜테이블 워커에 두 개의 레코드를 별도로 삽입합니다. 🎜rrreee🎜삽입된 데이터를 보고 마지막으로 삽입된 레코드의 id 필드 값이 2임을 확인합니다. last_insert_id()를 사용하여 마지막으로 자동 생성된 id 값을 확인합니다. 🎜rrreee🎜한 번에 하나의 레코드를 삽입할 때 반환 값이 마지막으로 삽입된 레코드의 ID 값입니다.
last_insert_id()
는 데이터의 첫 번째 행이 삽입될 때 생성된 값만 반환합니다. 여기서는 세 번째 레코드가 삽입됩니다. 그 이유는 다른 서버에 의존하여 동일한 insert 문을 복제하기가 쉽기 때문입니다. 🎜🎜팁: 🎜🎜🎜last_insert_id
는 테이블 a에 먼저 데이터를 삽입한 다음 테이블 b에 데이터를 삽입합니다. . 🎜🎜🎜🎜관련 무료 학습 권장 사항: 🎜mysql 데이터베이스🎜(동영상)🎜🎜위 내용은 MySQL, 시스템 정보 기능 도입의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

在mysql中,可利用“ALTER TABLE 表名 DROP INDEX unique key名”语句来删除unique key;ALTER TABLE语句用于对数据进行添加、删除或修改操作,DROP INDEX语句用于表示删除约束操作。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

뜨거운 주제



