programing

PHP-MySQL-MySQL 정수 필드를 안전하게 증가시키는 방법?

bestprogram 2023. 8. 25. 23:49

PHP-MySQL-MySQL 정수 필드를 안전하게 증가시키는 방법?

저는 php와 mysql을 사용하여 안전하게 필드 값을 증가시키고 싶습니다.

  1. 어떤 유형의 테이블/필드를 사용해야 합니까?

  2. 내가 사용해야 하는 MySQL의 최소 버전이 있습니까?

  3. MySQL에 대한 안전한 트랜잭션을 위한 SQL 코드는 무엇입니까?

어떤 유형의 "테이블"을 의미하는 것으로 스토리지 엔진을 의미하는 것은 스토리지 엔진입니다.돌연변이를 지원하는 모든 것(즉, "아카이브" 또는 "블랙홀"이 아님)

모든 숫자 필드(작은 의미, int, float 등)를 사용할 수 있습니다.즉, 특별한 PHP 코드는 없으며 원하는 필드를 늘리기 위한 SQL만 있습니다.

UPDATE table SET field = field + 1 WHERE [...]

트랜잭션을 원하는 경우 위의 쿼리를 트랜잭션에 포함합니다.MySQL 버전에 대해서는 @hsz에 동의합니다 - 가능한 최신 버전을 사용합니다.

기본 키를 말하는 경우 설정id로 열을 올리다.primary그리고.auto_increment.

필드 증가는 다음과 같습니다.

UPDATE table SET field = field + 1 WHERE id = 9

MySQL 버전 정보 - 가능한 최신 버전을 사용합니다. ;)
> 5.0괜찮을 겁니다.

1.어떤 유형의 테이블/필드를 사용해야 합니까?

--> 표의 유형은 응용프로그램에 대해 계획한 내용에 따라 달라집니다.이노드브일 수도 있고 마이삼일 수도 있습니다.숫자 열을 사용하여 숫자 열을 증가/감소하는 것이 좋습니다.음수를 허용할 계획이라면 서명되지 않은 상태로 만들지 마십시오.

열 길이를 선언할 때 유용한 제한은 다음과 같습니다.

TINYINT (length)  - 1 - Integer with unsigned range of 0-255 and a signed range from -128-127
SMALLINT (length)  - 2 - Integer with unsigned range of 0-65535 and a signed range from -32768-32767
MEDIUMINT(length)  - 3 -  Integer with unsigned range of 0-16777215 and a signed range from -8388608-8388607
INT(length)   - 4 - Integer with unsigned range of 0-429467295 and a signed range from -2147483648-2147483647
BIGINT(length)   - 8 -  Integer with unsigned range of 0-18446744 and a signed range from
-9223372036854775808-9223372036854775807

2.is 제가 사용해야 하는 MySQL의 최소 버전이 있습니까?

--> 단지 자동증분을 사용하기 위해서?당신은 최신 버전을 사용하는 것이 좋습니다.가능하다면 5.2.4 이상의 것을 제안합니다.

3. MySQL에 대한 안전한 트랜잭션인 이를 위한 SQL 코드는 무엇입니까?

--> 죄송합니다. 현재로서는 이에 대한 답변이 없습니다.

언급URL : https://stackoverflow.com/questions/2033537/php-mysql-how-to-safely-increment-mysql-integer-field