@media screen and (max-width: 1440px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 400px) {
}
최소영역은 반대
작은 영역에서 큰영역으로 순서 써야함..
중앙정렬
중앙정렬할 때
마진 오토가 안먹혀서 뭔가 했더니 가로값을 주어야했다!!
position: fixed;
/* fixed를 쓸 때에는 width, height를 명시해줘야 한다. */
width: 460px
/* left, right는 해당 요소의 위치 시작점을 결정한다. 그런데, 이때, margin의 양 값을 auto로 줌으로써 마진을 주어 해당 요소의 양 끝 위치를 각각 0으로 만들어준다. */
margin: 0 auto;
left: 0;
right: 0;
Build optimization failed: found page without a React Component as default export in pages/types
error Command failed with exit code 1.
페이지마다 export default ,
default를 기본으로 하는애가 있어야한다고 이해해서
페이지 types에 없어서 그런가 해봤는데 해결안됨
오히려 타입안에 인터페이스에 default붙이니까 못읽음
찾아보다가
구성 요소를 페이지 폴더 외부로 이동해야 합니다. Pages/는 Next.js 라우팅이 구조를 기반으로 하므로 페이지 구성 요소에만 사용해야 합니다.
Next.js에는 페이지 개념을 기반으로 구축된 파일 시스템 기반 라우터가 있습니다.
파일이 페이지 디렉토리에 추가되면 자동으로 경로로 사용할 수 있습니다.
위의 동작이 기본 동작이지만 페이지 디렉토리에 페이지가 아닌 파일을 포함하도록 Next.js 앱을 구성할 수 있습니다.
이렇게 하려면 아래와 같이 next.config.js 파일의 pageExtensions 항목을 수정하면 됩니다. 그런 다음 .page(_document.page.js, _app.page.js, index.page.js 등)를 포함하는 파일 확장자를 갖도록 페이지 구성 요소의 이름을 바꿉니다.
error failed to launch emulator. Reason:No emulators found as an output of `emulator -list-avds`
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'. > SDK location not found. Define location with an ANDROID_SDK_ROOT environment variable or by setting the sdk.dir path in your project's local properties file
CREATE EVENT if not exists forme //forme라는 이벤트 없으면 만듦 ON SCHEDULE EVERY 1 second //1초마다 실행 STARTS CURRENT_TIMESTAMP //지금시간부터 시작~ DO INSERT INTO new_table (name) values ('hi'); //실행할 쿼리문~
SHOW EVENTS ; //이벤트 확인
이벤트 삭제
DROP EVENT IF EXISTs forme;
사실 해도 실행이 안됐었다.
알고보니 insert에서 막히는 것이었음
만든 table 에서 id가 not null로 빈값 못들어가는데 name만 자꾸 넣어주려니까 안되었던 것이다.
SSH란 Secure SHell의 약자로네트워크 상의 다른 컴퓨터에 로그인하거나 원격으로 명령을 실행할 수 있는 프로그램 또는 프로토콜을 의미한다. 포트번호는 22번을 사용한다. 이러한 SSH를 이용해서버에 접속하여 명령어를 전송하는 원격 서버 접속 프로그램이PuTTY이다. 사실 PuTTY 는SSH 뿐만 아니라 Telnet, Rlogin 등 다양한 방법을 제공하고 있지만, Talnet 은 보안상의 문제로 잘 사용하지 않고, 보통 SSH 를 이용하여 원격 서버에 접속하기 위해 사용한다.
보통 서버는 IDC센터에 별도로 관리되고 있기 때문에 서버에 무언가 작업을 위해 매번 IDC센터에 방문하여 출입 허가 받고, 서버에 직접 접속하는 것이 여간 번거로운 일이 아닙니다.
이러한 서버에 회사에서 또는 집에서 원격으로 접속하여 작업을 할 수 있다면 상당히 편하겠죠. PuTTY는 Telnet 또는 SSH 등의 원격 접속을 통해 서버에 직접 접근하여 작업을 수행할 수 있습니다.
Telnet 과 SSH 는 원격 접속을 위한 프로토콜인데, 차이점은 Telnet은 패킷 암호화 기능이 없고, SSH는 있다는 점입니다. SSH는 서버에게 보내는 패킷을 암호화하기 때문에 중간에 패킷을 가로채기 당하더라도 패킷 복호화를 위한 키를 가지고 있지 않기 때문에 내용 확인이 불가능합니다.
drop database testDB;
create database testDB;
use testDB;
create table testDB(
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(45) ,
deposit_date DATETIME,
deposit_amount INT,
interest_amount INT,
CONSTRAINT testTable_PK PRIMARY KEY(id)
);
set @setTime = (select subtime(now(),'00:02:00'));
insert into testdb (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop function if exists fibo_number;
DELIMITER //
CREATE FUNCTION fibo_number(n INT) RETURNS INT
DETERMINISTIC
BEGIN
DECLARE f_0 INT default 0;
DECLARE f_1 INT default 1;
DECLARE out_fib INT;
DECLARE i INT;
DECLARE f_2 INT;
SET f_0 = 0;
SET f_1 = 1;
SET i = 1;
WHILE (i<=n) DO
SET f_2 = f_0 + f_1;
SET f_0 = f_1;
SET f_1 = f_2;
SET i = i + 1;
SET out_fib = f_0;
END WHILE;
RETURN out_fib;
END //
set @n = (select fibo_number(6))//
select @n//
drop procedure if exists pro//
create procedure pro()
begin
while (select id from testdb order by id desc limit 1) < 10 do
INSERT INTO testdb (name,deposit_date,deposit_amount,interest_amount)
select
(select MIN(name) from testdb),
date_add((select MAX(deposit_date) from testdb),INTERVAL @n minute),
((select MIN(deposit_amount) from testdb ) - (select MAX(interest_amount) from testdb)),
(select deposit_amount from testdb where id =1)* 0.02;
end while;
end //
delimiter ;
call pro();
select * from testdb;
use test;
truncate sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro;
delimiter //
create procedure pro()
begin
while (select id from sequence order by id desc limit 1) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount)
select
(select name from sequence order by id desc limit 1),
date_add((select deposit_date from sequence order by id desc limit 1),INTERVAL 1 hour),
((select deposit_amount from sequence order by id desc limit 1) + (select interest_amount from sequence order by id desc limit 1)),
(select deposit_amount from sequence where id=1)* 0.04 /12;
end while;
end //
delimiter ;
call pro();
select * from sequence;
use test;
truncate sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro;
delimiter //
create procedure pro()
begin
while (select MAX(id) from sequence) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount)
select
(select MIN(name) from sequence),
date_add((select MAX(deposit_date) from sequence),INTERVAL 1 hour),
((select MIN(deposit_amount) from sequence) - (select MAX(interest_amount) from sequence)),
(select MAX(deposit_amount) from sequence)* 0.02;
end while;
end //
delimiter ;
call pro();
select * from sequence;
이거는 order by 랑 섞어서 쓴거.
use test;
truncate sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro;
delimiter //
create procedure pro()
begin
while (select MAX(id) from sequence) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount)
select
(select MIN(name) from sequence),
date_add((select MAX(deposit_date) from sequence),INTERVAL 1 hour),
((select deposit_amount from sequence where deposit_amount order by id desc limit 1) - (select MAX(interest_amount) from sequence)),
(select deposit_amount from sequence where id =1)* 0.02;
end while;
end //
delimiter ;
call pro();
select * from sequence;
select deposit_amount where deposit_amount order by id desc limit 1
이 order by id dec limit 1
을 사용해서 마지막행 값을 구했었다.
우와 max로 썼더니
null값 사라짐!
확실한 건 코드가 짧아져서 너무 좋음ㅋㅋㅋㅋ
구하려는 열과 테이블만 적으면 됨
use test;
truncate sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro;
delimiter //
create procedure pro()
begin
while (select MAX(id) from sequence) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount)
select
(select MIN(name) from sequence),
date_add((select MAX(deposit_date) from sequence),INTERVAL 1 hour),
((select MAX(deposit_amount) from sequence) + (select MAX(interest_amount) from sequence)),
(select MIN(deposit_amount) from sequence)* 0.04 /12;
end while;
end //
delimiter ;
call pro();
select * from sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,'10000000','0');
drop procedure if exists pro; delimiter // create procedure pro() begin while (select id from sequence order by id desc limit 1) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount) select (select name from sequence order by id desc limit 1), date_add((select deposit_date from sequence where deposit_date order by id desc limit 1),INTERVAL 1 hour), ((select deposit_amount from sequence where deposit_amount order by id desc limit 1) + (select interest_amount from sequence where interest_amount order by id desc limit 1)), (select deposit_amount from sequence where id='1')* 0.04 /12;
end while; end // delimiter ;
call pro();
select * from sequence;
아 다음행에 insert 추가 되는게
마지막 id가 9이니까
10까지 뜨는거구나~!!
그래도 deposit_amount의 마지막행 10000000을 구해서 이자액 33333을 구했으면
use test; truncate sequence; set @setTime = (select subtime(now(),'00:02:00')); insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro; delimiter // create procedure pro() begin DECLARE n varchar(45) default "이소윤" ;
while (select id from sequence order by id desc limit 1) < 10 do INSERT INTO sequence (deposit_date) select (date_add((select deposit_date from sequence where deposit_date order by id desc limit 1),INTERVAL 1 hour));
update sequence set name = n, interest_amount = (select deposit_amount where deposit_amount order by id desc limit 1)* 0.04 /12;
end while;
end // delimiter ; call pro();
select * from test.sequence;
---
시간 증가만 insert해주고
나머지는 update로 넣어주려 했으나 잘안됨..
그래서 원래 한번에 다 insert한 걸로 수정함
중간에 null인거..
흠
그냥 id가 2인거 조건으로 넣어줌..
이러면 안될거같지만
use test;
truncate sequence;
set @setTime = (select subtime(now(),'00:02:00'));
insert into sequence (name,deposit_date,deposit_amount,interest_amount) values ('이소윤',@setTime,10000000,0);
drop procedure if exists pro;
delimiter //
create procedure pro()
begin
while (select id from sequence order by id desc limit 1) < 10 do
INSERT INTO sequence (name,deposit_date,deposit_amount,interest_amount)
select
(select name from sequence order by id desc limit 1),
date_add((select deposit_date from sequence where deposit_date order by id desc limit 1),INTERVAL 1 hour),
((select deposit_amount from sequence where deposit_amount order by id desc limit 1) + (select interest_amount from sequence where interest_amount order by id desc limit 1)),
(select deposit_amount from sequence where id='1')* 0.04 /12;
end while;
end //
delimiter ;
call pro();
update sequence
set deposit_amount = 10000000
where id = 2;
select * from sequence;
create procedure pro(i int)
begin
while i < 5 do
insert into sequence (interest_amount) values (i);
set i = i +1;
end while;
end
//
DELIMITER ;
call pro(0);
커맨트 창에 명령어입력할때 한 줄씩 넣어야 작동하네...
while 기본적인 거 했으니까 과제해보기
1시간씩 이자액 증가하기
명령문 실행했을 때
기준 시간보다 몇 시간 지나있으면 그 몇시간 만큼 이자액 증가.
DELIMITER //
create procedure pro(i)
while if (기준시간 + 1 분 * i) > 기준시간 ,이면 실행한다. do
이자액 증가 실행
insert into sequence (interest_amount) values (증가한 이자액 넣기);
SELECT * FROM test.sequence; drop procedure if exists pro; delimiter // create procedure pro() begin while @min < 30 do set @min = minute((SELECT TIMEDIFF(now(),'2022-05-11 10:30:00'))); set @deposit_amount =(select deposit_amount from sequence where id='1'); select @min; insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end while; end // delimiter ;
call pro();
오 뭔가 함 근데 계속 들어가!!!!
1분 지났을때만 추가되어야하는데..
SELECT * FROM test.sequence; truncate sequence;
insert into sequence (name,deposit_date,deposit_amount) values ('이소윤','20200509','10000000');
drop procedure if exists pro; delimiter // create procedure pro() begin while @min <10 do set @min = minute( (SELECT TIMEDIFF(now(),'2022-05-11 11:48:00')) ); set @deposit_amount =(select deposit_amount from sequence where id='1'); select @min; insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end while; end // delimiter ;
call pro();
1분마다 바뀌어야하는데 초 차이날때마다 업데이트됨
워크벤치에서 한번에 실행하고 싶은데 왜 cmd에서는 잘되어도 워크벤치는null값으로 계속 찍힐까?
계속 찍힘 이렇게..
-------------------
SELECT * FROM test.sequence;SELECT * FROM test.sequence; truncate sequence;
insert into sequence (name,deposit_date,deposit_amount) values ('이소윤','20200509','10000000');
drop procedure if exists pro; delimiter // create procedure pro() begin
set @deposit_amount =(select deposit_amount from sequence where id='1'); while @min <10 do set @min = minute( (SELECT TIMEDIFF(now(),'2022-05-11 14:26:00')) ); if ( @min /@min >0) then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end if; end while;
end // delimiter ;
call pro();
----
set @lastTime = (select deposit_date from sequence where deposit_date order by id desc limit 1);
만약, 이전분보다 1분 흘렀으면
if (SELECT TIMEDIFF(now(),마지막행시간)) > '00:01:00'
set 흐른분 = minute(SELECT TIMEDIFF(now(),마지막행시간))
마지막행에 넣기 흐른분* 이자율
////////////////
SELECT * FROM test.sequence;SELECT * FROM test.sequence; truncate sequence; set @test = (select subtime(now(),'00:02:00')); insert into sequence (name,deposit_date,deposit_amount) values ('이소윤',@test,'10000000');
drop procedure if exists pro; delimiter // create procedure pro() begin while @min <30 do set @interestAmount = (select interest_amount from sequence);
if (SELECT TIMEDIFF(now(),@lastTime)) > '00:01:00' then set @lastTime = (select deposit_date from sequence where deposit_date order by id desc limit 1); set @min = minute( (SELECT TIMEDIFF(now(),@lastTime)) ); if ( @interestAmount != @interestAmount) then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end if; end if; end while; end // delimiter ;
call pro();
///////////
SELECT * FROM test.sequence;SELECT * FROM test.sequence; use test; truncate sequence; set @test = (select subtime(now(),'00:02:00')); insert into sequence (name,deposit_date,deposit_amount) values ('이소윤',@test,'10000000');
drop procedure if exists pro; delimiter // create procedure pro() begin while do set @min = minute( (SELECT TIMEDIFF(now(),(select deposit_date from sequence where deposit_date order by id desc limit 1))) ); set @interestAmount = (select interest_amount from sequence where interest_amount order by id desc limit 1);
if @min > '0' then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); if ( @interestAmount != @interestAmount) then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end if;
end if; end while; end // delimiter ;
call pro();
/////////////
------------
마지막에서 1꺼
마지막에서 2한번더 들어간거!
이렇게
수정해야겠다. 왜냐면
id=2부터 이자액 들어가니까
use test; truncate sequence;
set @setTime = (select subtime(now(),'00:02:00')); insert into sequence (name,deposit_date,deposit_amount) values ('이소윤',@setTime,'10000000');
drop procedure if exists pro; delimiter // create procedure pro() begin set @min = minute((SELECT TIMEDIFF(now(), @setTime))); set i =1;
while i <= @min do set i = i +1; set @interest_amount = (select interest_amount from sequence where interest_amount order by id desc limit 2); set @Prev_interest_amount = (select interest_amount from sequence where interest_amount order by id desc limit 3);
if (@interest_amount != @Prev_interest_amount) then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end if; end while; end // delimiter ;
call pro();
흑흑 안돼...
왜 삭제 안되지?????
use test;
를 빼먹었나 그거 하고 하니까 됨
/////
여러번으 시도를 했지만 안됨..
use test; truncate sequence;
set @setTime = (select subtime(now(),'00:02:00')); select @setTime; insert into sequence (name,deposit_date,deposit_amount) values ('이소윤',@setTime,'10000000'); select * from sequence;
drop procedure if exists pro; delimiter // create procedure pro(i int) begin set @min = minute((SELECT TIMEDIFF(now(), @setTime))); select @min;
while i <= @min do set i = i +1; select i; set @interest_amount = (select interest_amount from sequence where interest_amount order by id desc limit 1); set @Prev_interest_amount = (select interest_amount from sequence where interest_amount order by id desc limit 2);
if (@interest_amount != @Prev_interest_amount) then insert into sequence (interest_amount) values (@min*(@deposit_amount*0.04/12)); end if; end while; end // delimiter ;