반응형

MySQL 100

PDO 연결 배열로 모든 그룹 키-값 쌍 가져오기

PDO 연결 배열로 모든 그룹 키-값 쌍 가져오기 가끔 다음과 유사한 질문이 있을 때가 있습니다. SELECT `key`, `value` FROM `settings`; 이 경우 다음 값을 사용하여 연상 배열을 얻습니다.key&value해당 배열의 각 항목으로, 예를 들어 데이터베이스에 다음이 포함된 경우:('first_name', 'Tom'), ('last_name', 'Jeferson')배열은 다음과 같아야 합니다.array('first_name' => 'Tom', 'last_name' => 'Jeferson');. 가장 일반적인 방법은 다음과 같습니다. $settings_flat = $db ->query("SELECT `name`, `value` FROM `settings`;") ->fetchAll(..

itsource 2023.08.15

제한 없이 MySQL 오프셋

제한 없이 MySQL 오프셋 이 질문에는 이미 다음과 같은 답이 있습니다. 마감됨13년 전에. 중복 가능성: Mysql 간격띄우기 무한 행 MySQL에서 '오프셋'은 있지만 '제한'은 없는 쿼리를 지정할 수 있습니까?예: SELECT * FROM countries OFFSET 2 실패하지만: SELECT * FROM COUNTRIES LIMIT 8 OFFSET 2 잘 작동합니다.오프셋만 지정하고 싶습니다.감사합니다!기본적으로, 아닙니다.제한을 제공해야 합니다.해결 방법은 이 SO 질문을 참조하십시오.언급URL : https://stackoverflow.com/questions/3173635/offset-mysql-without-limit

itsource 2023.07.31

SHOW TABLES를 사용하여 뷰가 아닌 테이블만 가져오는 방법은 무엇입니까?

SHOW TABLES를 사용하여 뷰가 아닌 테이블만 가져오는 방법은 무엇입니까? SHOW TABLES테이블+테이블을 제공합니다. 테이블만 검색하려면 어떻게 해야 합니까?show full tables where Table_Type = 'BASE TABLE' 말 그대로의 아니면 다른 방법으로; show full tables where Table_Type != 'VIEW' http://dev.mysql.com/doc/refman/5.0/en/show-tables.html9년 된 질문이지만 구글은 2019년에 같은 문제로 저를 여기로 데려왔습니다. https://dev.mysql.com/doc/refman/8.0/en/show-tables.html 의 링크는 LIKE와 WHERE를 함께 사용할 수 없음을 알려줍..

itsource 2023.07.26

단일 SQL 문의 열 헤더 출력을 억제하려면 어떻게 해야 합니까?

단일 SQL 문의 열 헤더 출력을 억제하려면 어떻게 해야 합니까? 몇 가지 SQL 문을 일괄적으로 실행하고 있습니다.mysql명령줄 바이너리).여러 SELECT 문 중 하나가 열 머리글을 인쇄하지 않고 선택한 레코드만 인쇄하기를 원합니다.이게 가능합니까?를 사용하여 mysql을 호출합니다.-N(의 에일리어스)-N이--skip-column-names) 옵션: mysql -N ... use testdb; select * from names; +------+-------+ | 1 | pete | | 2 | john | | 3 | mike | +------+-------+ 3 rows in set (0.00 sec) 에리히의 공로-N 에일리어스를 지적하기 위한 BSchulz. 결과 주변의 그리드(수직 및 수평선..

itsource 2023.02.06

mysql에서 증분 값 업데이트

mysql에서 증분 값 업데이트 테이블 필드의 한 필드는 모든 행에 대해 0으로 설정됩니다.그러나 업데이트 쿼리에서 단계 1까지 증분 값을 업데이트하고 싶습니다. 어떻게 하면 mysql에서 할 수 있을까요?이것을 시험해 보세요. mysql> select @i := 0; mysql> update bar set c = (select @i := @i + 1); SET @a = 0; UPDATE customers SET id = @a:=@a+1; 이것도 할 수 있어요.첫 번째 방법은 원래 컬럼이 아닌 AUTO_INCREMENT 컬럼으로 새 테이블을 만들고 오래된 모든 데이터를 새 테이블에 삽입한 후 새 테이블의 이름을 변경하고 오래된 테이블을 삭제하는 것입니다. 또 다른 방법은 각 행에 대해 증가 수를 생성하는..

itsource 2023.01.28

MySQL: MySQL에서 플러시 권한이 필요한 경우

MySQL: MySQL에서 플러시 권한이 필요한 경우 새 테이블과 함께 사용할 사용자를 생성할 때 보통 다음 명령어를 호출합니다. CREATE DATABASE mydb; GRANT ALL PRIVILEGES ON mydb.* TO myuser@localhost IDENTIFIED BY "mypassword"; 저는 지금까지 이 시스템을 이용할 필요가 없었습니다.FLUSH PRIVILEGES명령어를 발행한 후에 명령어를 발행합니다.사용자는 로그인하여 데이터베이스를 사용할 수 있으며 데이터베이스에 정상적으로 연결되는 PHP 스크립트를 실행할 수 있습니다.그러나 이 명령어는 제가 보는 거의 모든 튜토리얼에서 사용되고 있습니다. 는 언제입니까?FLUSH PRIVILEGES명령어는 정말 필요했고 언제 필요없습니까..

itsource 2023.01.28

타임스탬프(자동)는 언제 갱신됩니까?

타임스탬프(자동)는 언제 갱신됩니까? 유형 테이블에 열이 있는 경우TIMESTAMP디폴트로는 CURRENT_TIMESTamp는 같은 행에 있는 다른 컬럼의 값을 갱신하면 이 컬럼이 현재 타임스탬프로 갱신됩니까? 아닌 것 같지만 이것이 일어나야 하는 것인지 잘 모르겠다. 이것이 무엇을 의미하는지 이해할 수 없습니다(MySQL 문서 참조). 열이 자동으로 업데이트되는 경우 행의 다른 열 값이 현재 값에서 변경되면 열이 현재 타임스탬프로 자동 업데이트됩니다.다른 모든 열이 현재 값으로 설정된 경우 열은 변경되지 않습니다.다른 열이 변경될 때 열이 업데이트되지 않도록 하려면 현재 값으로 명시적으로 설정하십시오.다른 컬럼이 변경되지 않은 경우에도 컬럼을 갱신하려면 컬럼이 가져야 할 값으로 명시적으로 설정합니다.]..

itsource 2023.01.28

성능 저하가 시작되기 전에 MySQL 데이터베이스를 얼마나 크게 만들 수 있습니까?

성능 저하가 시작되기 전에 MySQL 데이터베이스를 얼마나 크게 만들 수 있습니까? MySQL 데이터베이스의 성능이 저하되기 시작하는 시점은 언제입니까? 물리적 데이터베이스 크기가 중요합니까? 레코드 수가 중요합니까? 성능 저하가 선형 또는 지수적입니까? 저는 거의 2GB를 차지하는 약 1500만 개의 레코드가 있는 대용량 데이터베이스를 가지고 있습니다.이러한 수치를 바탕으로 데이터를 삭제해야 하는 동기가 있습니까?아니면 몇 년 더 확장해도 안전한가요?물리적 데이터베이스 크기는 중요하지 않습니다.기록의 수는 중요하지 않다. 제 경험상 가장 큰 문제는 크기가 아니라 한번에 처리할 수 있는 쿼리 수입니다.대부분의 경우 마스터/슬레이브 구성으로 이동하여 슬레이브에 대해 읽기 쿼리를 실행하고 마스터에 대해 쓰기..

itsource 2023.01.28

MySQL FK의 적절한 명명 규칙은 무엇입니까?

MySQL FK의 적절한 명명 규칙은 무엇입니까? 고유해야 하므로 MySQL DB에 FK 이름을 붙여야 합니까?MySQL에서는 외부 키 제약에 기호 이름을 붙일 필요가 없습니다.이름을 지정하지 않으면 InnoDB는 자동으로 고유한 이름을 만듭니다. 어떤 경우에도 저는 다음과 같은 표기법을 사용하고 있습니다. fk_[referencing table name]_[referenced table name]_[referencing field name] 예: CREATE TABLE users( user_id int, name varchar(100) ); CREATE TABLE messages( message_id int, user_id int ); ALTER TABLE messages ADD CONSTRAINT f..

itsource 2023.01.19

mysql 데이터베이스에 슈퍼 권한을 추가하는 방법

mysql 데이터베이스에 슈퍼 권한을 추가하는 방법 mysql에서 쿼리를 실행하려고 합니다. SET GLOBAL log_bin_trust_function_creators =1; 오류: SQL 쿼리: SET GLOBAL log_bin_trust_function_function = 1 MySQL은 다음과 같이 말했습니다. #1227 - 접근이 거부되었습니다.이 조작에는 SUPER 특권이 필요합니다. 어떻게 할당하면 되는지 알고 싶다.SUPER데이터베이스에 대한 권한슈퍼 특권을 추가할 수 있습니다.phpmyadmin: [ PHP MYADMIN ]> [ privileges ]> [ Edit User ]> [ Administrator ]탭에서 [SUPER]을 클릭합니다.> [ Go ] 끝까지 하고 싶다면Conso..

itsource 2023.01.19
반응형