학원 11월 24일

jyp·2022년 11월 24일
0

학원

목록 보기
1/57
post-thumbnail

mysql 명령어

완성된 테이블에서 필드를 추가(add), 삭제(drop), 수정(modify,change)

필드를 접근하는 명령

기억 안날땐 alter table 검색하면 관련 명령어 다 나옴
추가 : alter table 테이블명 add 필드명(추가할) 자료형;
삭제 : alter table 테이블명 drop 필드명;
수정 : alter table 테이블명 modify <<(자료형만 바꿀때 사용함) num int;<< 필드명 변경불가
-alter table 테이블명 change 기존필드명 바꿀필드명 자료형;
테이블,필드 확인 : desc board3 (테이블명);

max(필드) : 해당 필드에서 가장 높은 값
min(필드) : 해당 필드에서 가장 낮은 값

필드를 만들때 default(값)를 넣으면 생성 시 초기값을 주는것
ex) select max(id) from board;

mydb
테이블 : gesipan
필드
id int auto_increment primary key
title varchar(100)
pwd char(10)
content text
age int >> 10대,20대,30대,40대,50대,60대 이상
food char(15) 음식 6가지
birth char(4) 생년
writeday date

food같은 경우 6가지중 선택을 여러가지 할수 있게 배열로 만들어서 생성
ex)
String[] food = request.getParameterValues("food"); << 배열시 ParameterValue 사용
String fod ="";
for(int i=0;i<food.length;i++)
{
fod = fod + food[i]+",";
}

list ex)

<table width="700" border="1" align="center">
	<tr align="center">
		<td>나이</td>
		<td>태어난해</td>
		<td>제목</td>
		<td>작성일</td>
	</tr>

<%
while(rs.next())
{
String age2;

	int age = rs.getInt("age");
	switch(age)
	{
		case 0: age2="10대"; break;
		case 1: age2="20대"; break;
		case 2: age2="30대"; break;
		case 3: age2="40대"; break;
		case 4: age2="50대"; break;
		case 5: age2="60대"; break;
		default: age2="오류";
	}

%>

<tr align="center">
	<td><%=age2%></td>
	<td><%=2023-rs.getInt("birth")%>년</td>
	<td><a href="content.jsp?id=<%=rs.getString("id")%>"><%=rs.getString("title")%></td>
	<td><%=rs.getString("writeday")%></td>
</tr>

<%
}
%>
content 문서에서 radio 와 checkbox 처리 하는 ex)
<%

radio 처리
String age;
switch(rs.getInt("age"))
{
case 0: age="10대";break;
case 1: age="20대";break;
case 2: age="30대";break;
case 3: age="40대";break;
case 4: age="50대";break;
case 5: age="60대";break;
default: age="오류";
}

checkbox 처리
String[] imsi = rs.getString("food").split(",");
"," split으로 ,를 없애주고 자동으로 배열로 생성해주기 때문에 배열로 생성
String food = "";

for(int i=0;i<imsi.length;i++)
{
switch(imsi[i])
	{
		case "0": food = food+"탕슉,";break;
		case "1": food = food+"짜장,";break;
		case "2": food = food+"짬뽕,";break;
		case "3": food = food+"콩국수,";break;
		case "4": food = food+"국밥,";break;
		case "5": food = food+"떡볶이,";break;
		default: food = food+"";
	}
}

%>

조회수 증가 ex)
<%
String id = request.getParameter("id");

조회수를 1증가 시키기

String xsql = "update gesipan set readnum=readnum+1 where id=?";
PreparedStatement xpstmt = conn.prepareStatement(xsql);
xpstmt.setString(1, id);
xpstmt.executeUpdate();

xpstmt.close();
conn.close();

response.sendRedirect("content.jsp?id="+id);

%>

나이 : radio >> 해당되는 radio에 checked속성을 true로 전달하면 됨
document.ppp.age[<%=rs.getInt("age")%>].checked=true;

음식 : checkbox >> 해당되는 쳌박에 checked속성을 true로 전달 (1개 이상)
	var imsi = "<%=rs.getString("food")%>";
		var food = imsi.split(",");
		
		for(var i=0;i<food.length-1;i++)
		{
			document.ppp.food[food[i]].checked=true;
		}
                                         
생년 : select >> selectedIndex , value 이용하는 방법 2가지
document.ppp.birth.selectedIndex=<%rs.getInt("birth")%>;

벨류 값을 순서가 없는 텍스르로 했을경우 이렇게
document.ppp.birth.value=<%=rs.getInt("birth")%>;

테이블로 만드는것도 해봤다 나중에 연습해보자

아래는 필드내에 속성이 체크하는속성들일때 사용함 ex)

function init()
{
나이 : radio >> 해당되는 radio에 checked속성을 true로 전달하면 됨
document.ppp.age[<%=rs.getInt("age")%>].checked=true;

		음식 : checkbox >> 해당되는 쳌박에 checked속성을 true로 전달 (1개 이상)
		var imsi = "<%=rs.getString("food")%>";
		var food = imsi.split(",");
		
		for(var i=0;i<food.length-1;i++)
		{
			document.ppp.food[food[i]].checked=true;
		}
		생년 : select >> selectedIndex , value 이용하는 방법 2가지
		
		document.ppp.birth.value=<%=rs.getInt("birth")%>;
	}
profile
국비 코딩

0개의 댓글