Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL

  1. JDBC를 활용해 테이블의 특정 열(컬럼)만 조회하는 방법

    JDBC에서 ResultSet 인터페이스는 SQL 쿼리 실행 결과로 생성된 테이블 형태의 데이터를 표현합니다. ResultSet은 현재 행(row)을 가리키는 커서(cursor)를 가지고 있으며, 처음에는 이 커서가 첫 번째 행 바로 앞에 위치합니다.next() 메서드를 호출하면 커서를 다음 행으로 이동시킬 수 있고, ResultSet 인터페이스가 제공하는 getter 메서드(getInt(), getString(), getDate() 등)를 사용해 해당 행의 컬럼 값을 가져올 수 있습니다.테이블에서 원하는 데이터 조회하기테이블에서

  2. JDBC DatabaseMetaData란 무엇이고 왜 중요할까?

    일반적으로 데이터에 대한 데이터를 메타데이터(metadata)라고 합니다. JDBC에서 DatabaseMetaData 인터페이스는 현재 연결된 데이터베이스에 대한 다양한 정보를 조회할 수 있는 메서드를 제공합니다. 예를 들어 데이터베이스 이름, 드라이버 버전, 최대 컬럼 길이 등을 확인할 수 있습니다. DatabaseMetaData는 애플리케이션이 실행 환경의 데이터베이스 기능을 동적으로 파악해야 할 때 특히 유용합니다. 특정 DBMS에서만 지원하는 기능을 사용하기 전에 지원 여부를 먼저 확인하면 이식성 높은 코드를 작성할 수 있

  3. MySQL에서 서로 다른 데이터베이스에 있는 두 테이블 간 데이터 이동 방법

    서로 다른 데이터베이스에 존재하면서 열 구조까지 다른 두 테이블 사이에서 데이터를 옮기려면 INSERT ... SELECT 문을 사용하면 됩니다. 기본 문법은 다음과 같습니다.INSERT INTO yourDatabaseName1.yourTableName1(yourColumnName1,yourColumnName2,....N) SELECT yourColumnName1,yourColumnName2,....N FROM yourdatabaseName2.yourTableName2;즉, 대상 테이블 이름 앞에 데이터베이스 이름을 점(.)으로 연

  4. MySQL SELECT 문으로 여러 열의 고유한 값 조회하기(DISTINCT 활용)

    MySQL에서 DISTINCT 키워드는 단일 열뿐만 아니라 여러 열을 조합한 기준으로도 중복을 제거할 수 있습니다. 다만 실무에서는 특정 열(예: 학생 ID)별로 가장 최신 레코드 하나씩만 조회해야 하는 경우가 많은데, 이럴 때는 DISTINCT보다 서브쿼리와 GROUP BY, MAX() 함수를 조합하는 방식이 더 효과적입니다.이 글에서는 예제 테이블을 만들고, 학생별로 마지막 강의 기록만 조회하는 쿼리를 단계별로 살펴보겠습니다.1단계: 예제 테이블 생성먼저 강사 ID, 학생 ID, 기술 과목을 저장할 테이블을 생성합니다.mysql

  5. MySQL 8에서 비밀번호를 설정한 새 사용자 계정 생성하는 방법

    MySQL 8에서 비밀번호를 사용해 새 사용자 만들기MySQL 8에서는 CREATE USER 명령어를 사용하여 비밀번호가 설정된 새 사용자 계정을 손쉽게 생성할 수 있습니다. 이 글에서는 기본 문법부터 실제 예제까지 단계별로 살펴보겠습니다.먼저 현재 사용 중인 MySQL 버전을 확인해 보겠습니다.mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.14 sec)새 사용자 생성 기본 문

  6. MySQL varchar 컬럼에서 숫자가 아닌 값만 조회하는 방법 (REGEXP 활용)

    MySQL varchar 컬럼에서 숫자가 아닌 값만 선택하는 방법MySQL에서 varchar 타입 컬럼에 저장된 데이터 중 숫자로만 구성된 값이 아니라 알파벳이 포함된 값만 추출하고 싶다면 REGEXP(정규 표현식) 연산자를 활용하면 됩니다. 기본 문법은 다음과 같습니다.SELECT * FROM yourTableName WHERE yourColumnName REGEXP [a-zA-Z];여기서 [a-zA-Z] 패턴은 영문 대소문자가 하나라도 포함된 행을 의미합니다. 따라서 1000, 2456처럼 숫자로만 이루어진 값은 자동으로 결과에

  7. MySQL에서 특정 텍스트의 발생 횟수를 세는 방법

    MySQL에서 특정 텍스트의 발생 횟수 세기MySQL에서 특정 텍스트가 테이블에 몇 번 나타나는지 확인하려면 COUNT() 집계 함수와 IF() 함수를 함께 사용하면 됩니다. 개념을 쉽게 이해할 수 있도록 예제 테이블을 만들어 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 다음 쿼리로 테이블을 생성합니다.mysql> create table CountOccurrencesDemo-> (-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,-> TechnicalSubject varcha

  8. JDBC에서 Statement란 무엇일까? 생성부터 실행까지 완벽 정리

    Statement 인터페이스는 정적 SQL 구문을 표현하며, Java 프로그램에서 범용적인 SQL 문장을 생성하고 실행하는 데 사용됩니다. JDBC에서 데이터베이스로 SQL을 전달하는 가장 기본적인 방식으로, PreparedStatement나 CallableStatement와 달리 SQL 문자열을 매번 그대로 데이터베이스에 전송합니다. Statement 객체 생성하기 Connection 인터페이스의 createStatement() 메서드를 호출하면 Statement 객체를 생성할 수 있습니다. 아래와 같이 이 메서드를 호출하여 S

  9. JDBC PreparedStatement란 무엇인가? 개념부터 실행까지 완벽 정리

    PreparedStatement 인터페이스는 Statement 인터페이스를 확장한 것으로, 한 번 컴파일한 뒤 여러 번 실행할 수 있는 사전 컴파일(precompiled)된 SQL 문을 나타냅니다. 이 인터페이스는 매개변수화된(parameterized) SQL 쿼리를 지원하며, 쿼리에 0개 이상의 매개변수를 전달할 수 있습니다. 처음에는 실제 값 대신 물음표(?) 형태의 플레이스홀더(placeholder)를 사용하고, 이후 PreparedStatement 인터페이스가 제공하는 setXXX() 메서드를 통해 해당 자리에 값을 동적으

  10. JDBC의 CallableStatement란? 저장 프로시저 호출 방법 완벽 정리

    CallableStatement 인터페이스는 저장 프로시저(stored procedure)를 실행하기 위한 메서드를 제공합니다. JDBC API는 저장 프로시저용 SQL 이스케이프(escape) 문법을 표준으로 제공하기 때문에, 어떤 RDBMS를 사용하든 동일한 방식으로 저장 프로시저를 호출할 수 있습니다. CallableStatement 생성하기 Connection 인터페이스의 prepareCall() 메서드를 사용하면 CallableStatement 객체를 생성할 수 있습니다. 이 메서드는 저장 프로시저를 호출하는 쿼리 문자열

  11. JDBC의 execute(), executeQuery(), executeUpdate() 메서드 차이점 완벽 정리

    JDBC에서 Statement 객체를 생성한 후에는 Statement 인터페이스가 제공하는 세 가지 실행 메서드 중 하나를 사용해 SQL 문을 실행할 수 있습니다. 바로 execute(), executeUpdate(), executeQuery()입니다.세 메서드는 각각 용도와 반환값이 다르기 때문에, 실행하려는 SQL 문의 종류에 맞게 적절한 메서드를 선택하는 것이 중요합니다. 아래에서 각 메서드의 특징과 사용 예제를 살펴보겠습니다.1. execute() 메서드execute() 메서드는 주로 SQL DDL(Data Definitio

  12. JDBC 드라이버 4가지 유형, 언제 어떤 드라이버를 사용해야 할까?

    JDBC 드라이버 유형별 선택 가이드Java 애플리케이션에서 데이터베이스에 연결하려면 상황에 맞는 JDBC 드라이버를 선택하는 것이 중요합니다. 총 4가지 유형의 JDBC 드라이버가 있으며, 각각의 특성과 용도가 다릅니다.Type 4 — 단일 데이터베이스 접속 시 최선의 선택Oracle, Sybase, IBM DB2처럼 한 종류의 데이터베이스에만 접속하는 경우라면 Type 4 드라이버(순수 자바 드라이버)가 가장 권장됩니다. 순수 자바로 구현되어 별도의 네이티브 라이브러리나 미들웨어 없이 직접 데이터베이스와 통신하기 때문에 성능이

  13. MySQL 단일 쿼리로 이전·다음 레코드 한 번에 조회하는 방법

    MySQL에서는 UNION 연산자를 활용하면 하나의 쿼리만으로 특정 레코드의 이전(previous) 레코드와 다음(next) 레코드를 동시에 조회할 수 있습니다. 게시글 상세 페이지에서 이전 글 / 다음 글 내비게이션을 구현할 때 특히 유용한 기법입니다.기본 구문두 개의 SELECT 문을 각각 다음 레코드와 이전 레코드를 조회하도록 작성한 뒤, UNION으로 결합하면 됩니다.(SELECT * FROM yourTableName WHERE yourIdColumnName > yourValue ORDER BY yourIdColumnN

  14. MySQL 버전 확인 방법 2가지 - VERSION() 함수와 SHOW VARIABLES 활용하기

    MySQL을 사용하다 보면 현재 설치된 서버의 버전을 확인해야 하는 경우가 자주 있습니다. 예를 들어 특정 기능이 해당 버전에서 지원되는지 확인하거나, 업그레이드 전에 현재 환경을 파악할 때 버전 정보가 필요합니다.MySQL 버전을 확인하는 방법은 크게 두 가지가 있습니다. 첫 번째는 VERSION() 함수를 사용하는 방법이고, 두 번째는 SHOW VARIABLES 명령어를 사용하는 방법입니다. 각각의 사용법을 하나씩 살펴보겠습니다.1. VERSION() 함수로 버전 확인하기가장 간단하고 널리 사용되는 방법은 SELECT 문과 함께

  15. MySQL에서 root@localhost 사용자 이름을 변경하는 방법

    MySQL에서 root@localhost 사용자 이름 변경하기MySQL 데이터베이스의 기본 관리자 계정인 root는 무차별 대입 공격 등 외부 공격의 주요 표적이 되기 쉽습니다. 따라서 보안을 강화하기 위해 root 사용자 이름을 다른 이름으로 변경하는 것이 좋은 습관입니다. 이 글에서는 root@localhost 사용자 이름을 변경하는 방법을 단계별로 살펴보겠습니다.1. 사용자 이름 변경 문법root 사용자 이름을 변경하려면 아래와 같은 UPDATE 문법을 사용합니다.UPDATE mysql.user SET user = yourNe

  16. MySQL에서 테이블 생성일과 수정일 확인하는 방법 (SHOW TABLE STATUS)

    MySQL에서는 SHOW TABLE STATUS 명령어를 사용하면 데이터베이스에 있는 각 테이블의 생성 날짜(Create_time)와 마지막 수정 날짜(Update_time)를 정확하게 확인할 수 있습니다. 기본 문법 테이블의 생성 및 수정 시간을 조회할 때 사용하는 기본 문법은 다음과 같습니다. SHOW TABLE STATUS; 데이터베이스 선택하기 이번 예제에서는 여러 테이블이 이미 생성되어 있는 test3 데이터베이스를 사용합니다. 먼저 해당 데이터베이스를 선택합니다. mysql> use test3; Database ch

  17. MySQL에서도 PostgreSQL처럼 확장 출력(\G)으로 쿼리 결과 확인하는 방법

    네, 가능합니다. MySQL에서도 PostgreSQL과 유사한 확장 출력(expanded output) 기능을 사용할 수 있습니다. 방법은 간단합니다. 쿼리 마지막의 세미콜론(;) 대신 \G를 입력하면 됩니다.확장 출력 기본 문법SELECT * FROM yourTableName\G일반적인 세미콜론 방식은 결과를 표(테이블) 형태로 가로로 출력하지만, \G를 사용하면 각 행이 세로 방향으로 정렬되어 출력됩니다. 컬럼이 많거나 값이 길어서 터미널에서 결과가 잘리거나 지저분하게 보일 때 특히 유용합니다.예제 테이블 생성하기먼저 예제로 사

  18. MySQL SELECT 문에서 날짜 형식을 변경하는 가장 좋은 방법

    MySQL의 SELECT 문에서 날짜 형식을 변경하는 가장 효과적인 방법은 DATE_FORMAT() 함수를 사용하는 것입니다. 이 함수는 날짜나 datetime 값을 원하는 형식의 문자열로 변환해 줍니다.DATE_FORMAT 기본 문법SELECT DATE_FORMAT(yourColumnName, %d/%m/%Y %H:%i) AS anyAliasName FROM yourTableName WHERE yourCondition;예제 테이블 생성개념을 쉽게 이해하기 위해 예제 테이블을 먼저 만들어 보겠습니다. 테이블 생성 쿼리는 다음과 같습

  19. MySQL에서 마지막 슬래시 뒤의 텍스트를 추출하는 방법 (substring_index 활용법)

    MySQL에서 문자열의 마지막 슬래시(/) 뒤에 있는 텍스트를 가져오려면 substring_index() 함수를 사용하면 됩니다. 이 함수는 구분자를 기준으로 문자열을 나누어 원하는 부분만 손쉽게 추출할 수 있는 유용한 문자열 함수입니다.substring_index() 기본 문법기본적인 사용 문법은 다음과 같습니다.SELECT substring_index(컬럼명, /, -1) AS 별칭 FROM 테이블명;여기서 세 번째 인자인 -1은 뒤에서부터 첫 번째로 나타나는 구분자를 기준으로 그 오른쪽(뒤쪽) 텍스트를 반환하라는 의미입니다.

  20. MySQL에서 하위 쿼리 없이 WHERE 절에 실제 행 수(COUNT(*))를 활용하는 방법

    WHERE 절을 활용한 실제 행 수 조건 처리MySQL에서는 WHERE 절 안에 COUNT(*)를 포함하는 하위 쿼리를 사용하여 테이블의 실제 행 수를 조건으로 활용할 수 있습니다. 이 방식을 사용하면 테이블의 전체 행 수가 특정 값일 때만 결과를 반환하도록 쿼리를 제어할 수 있습니다.기본 문법SELECT yourColumnName1,yourColumnName2,...N FROM yourTableName WHERE (     SELECT COUNT(*) FROM yourTableName )=2;위

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:131/229  20-컴퓨터/Page Goto:1 125 126 127 128 129 130 131 132 133 134 135 136 137