날짜 차이를 알려주는 마리아 db datediff 함수가 있다. 순서가 좀 헷갈리는데 잘 봐야 한다. 일단 큰 값이 앞에오면 된다. selelct datediff('2022-01-01',now()); 하면 -90 이 나온다. selelct datediff(now(),'2022-01-01'); 하면 90 이 나온다. 하이디 SQL에서 보면 F1 클릭해서 DATEDIFF 설명을 보면 Syntax ----------- DATEDIFF(expr1,expr2) Description ------------ DATEDIFF() returns (expr1-expr2) exressed as a value in days from on date to the other. expr1 and expr2 are date of da..
dba가 되었다고 생각하고 마리아 db 계정 생성 및 권한부여를 한다. 다만 select 권한과 전체 권한 2개의 계정을 생성한다. %일 경우는 서버 접속하여 localhost에서 안되기 때문에 서버 접속해서 sql 할 일이 있으니 localhost도 같이 만든다. select 권한 만: testuser 전체권한 : testadm testuser 계정생성(비번은 ID와 동일): create user 'testuser'@'%' identified by 'testuser'; create user 'testuser'@'localhost' identified by 'testuser'; testadm 계정생성(비번은 ID와 동일): create user 'testadm'@'%' identified by 'test..
마리아 db에서 같은 테이블에서 업데이트를 치려고 하는데 table is specified twice 이런 에러가 났다. 흠.. 구글링을 해보니 The solutions involving SELECT ... FROM (SELECT * FROM table) AS tmp just dump the entire content of a table into a temporary table, which can then be used in any further outer queries, like for example an update query. This forces the order of operations to be: Select everything first into a temporary table and the..
마리아 db를 사용하다보면 프로시저를 만들일이 생긴다. 인터넷 검색하면 잡다한게 많이 나와서 프로시저 만들고 실행하는 잘나와 있는 사이트가 있어서 소개한다. 1. Procedure에서 transaction 처리 BOOK테이블에는 초기책에 대한 정보가 입력되고 그리고 BOOK_SELL에 판매될 책의 정보가 입력된다. 프로시저를 이용해서 BOOKS, BOOKS_SELL 테이블에 입력하도록 한다. /* DELIMITER는 프로시저 앞,뒤의 위치하여 안에 있는 부분은 한번에 실행될 수 있게 하는 역할을 한다. */ DELIMITER $$ CREATE PROCEDURE INSERT_BOOK (IN _BOOKID CHAR(5), IN _BOOKNAME VARCHAR(20), _PRICE DOUBLE, _BOOKTY..
use DB명; 을 써주면 된다. 그럼 전체 마리아db 함수 생성 방법은 use DB명; drop function if exists getName; delimiter $$ create function getName(para varchar(20)) returns varchar(300) begin delare rst varchar(300); select name into rst from tableName; return rst; end $$ select해서 나온 name을 into를 통해 rst에 넣고 rst를 리턴한다.
db 사용 및 개발을 하다보면 새로운 db를 만들어서 사용해야할 일이 생긴다. 그럴때는 먼저 db를 만들고 테이블 스키마를 만든다. 그런 다음 기존 사용자가 그 새로운 db를 사용하기 위해서는 권한을 줘야 한다. 권한을 주지 않으면 사용할 수가 없다. (머 .. 당연한 말인가.. 머 당연한것도 안할때가 있지...) 그래서 기존 사용자에게 신규 db 사용권한을 줘야 하고 그 방법을 알기 쉽게 살펴보면 aaa라는 사용자가 있고 bbb라는 신규 db가 있다고 치자 use mysql; show grants for 'aaa'@'%'; 해보면 권한이 없을 것이다. grant all privileges on bbb.* to 'aaa'@'%'; flush privileges; 이렇게 한다음 show grants for..
MariaDB(MySQL) 제약조건(Constraints) 확인(조회) SELECT * FROM information_schema.table_constraints; information_schema.table_constraints에서 모든 제약조건(Constraints)를 확인할 수 있다. 추가로 아래와 같이 입력 시 해당 테이블에 제약조건을 확인할 수 있다. SELECT * FROM information_schema.table_constraints WHERE table_name='테이블명'; 결과의 constraint_type에 foreign key 이라고 되어 있는게 있다. foreign key 는 권고 사항이 아니다. 아시다 시피 피곤한다. 그래서 삭제하려고 했는데... 이런식으로 ALTER TAB..
- Total
- Today
- Yesterday
- XE
- 오라클
- 파이썬
- EC
- 자바 셀레니움
- JDBC
- 인포믹스
- ocajp
- C언어
- 파싱
- XE3
- Python
- 포인터
- proc
- 문자열
- ocjap
- xe addon
- MySQL
- php
- 이클립스
- esql
- C
- 자바 smtp
- xe애드온
- 스크래핑
- ocpjp
- KG
- 프로씨
- 자바
- webix
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |