제목 : 기본형 게시판 테이블 설계(basic.sql)
--[0] 기본 게시판(Basic)용 테이블 설계
--[!] Drop Table dbo.Basic
Create Table dbo.Basic
(
Num Int Identity(1, 1) Not Null Primary Key, --번호
Name VarChar(25) Not Null, --이름
Email VarChar(100) Null, --이메일
Title VarChar(150) Not Null, --제목
PostDate DateTime Default GetDate() Not Null, --작성일
PostIP VarChar(15) Not Null, --작성IP
Content Text Not Null, --내용
Password VarChar(20) Not Null, --비밀번호
ReadCount Int Default 0, --조회수
Encoding VarChar(10) Not Null, --인코딩(HTML/Text)
Homepage VarChar(100) Null, --홈페이지
ModifyDate SmallDateTime Null, --수정일
ModifyIP VarChar(15) Null --수정IP
)
Go
--[1]~[6]기본 SQL문 6가지 작성 : 입력~검색까지
Select * From Basic
Go
--[7] 기본 게시판(Basic)에 글을 작성하는 저장 프로시저 : procWriteBasic
Create Proc dbo.procWriteBasic
@Name VarChar(25),
@Email VarChar(100),
@Title VarChar(150),
@PostIP VarChar(15),
@Content Text,
@Password VarChar(20),
@Encoding VarChar(10),
@Homepage VarChar(100)
--With Encryption
As
Insert Basic
(
Name, Email, Title, PostIP, Content,
Password, Encoding, Homepage
)
Values
(
@Name, @Email, @Title, @PostIP, @Content,
@Password, @Encoding, @Homepage
)
Go
--[8] 기본 게시판(Basic)에서 데이터를 읽어오는 저장 프로시저 : procListBasic
Create Procedure dbo.procListBasic
As
Select * From Basic Order By Num Desc
Go
--[9] 조회수 증가시켜주는 저장 프로시저 : procUpdateReadCount
Create Proc dbo.procUpdateReadCountBasic
@Num Int
As
Update Basic
Set ReadCount = ReadCount + 1
Where Num = @Num
Go
--[10] 해당 글을 세부적으로 읽어오는 저장 프로시저 : procViewBasic
Create Procedure dbo.procViewBasic
@Num Int
As
Select *
From Basic
Where Num = @Num
Go
--[11] 해당 글에 대한 비밀번호 읽어오는 저장 프로시저 : procReadPassword
Create Proc dbo.procReadPasswordBasic
@Num Int
As
Select Password
From Basic
Where Num = @Num
Go
--[12] 해당 글 지우는 저장 프로시저 : procDeleteBasic
Create Proc dbo.procDeleteBasic
@Num Int
As
Delete Basic Where Num = @Num
Go
--[13] 해당 글을 수정하는 저장 프로시저 : procUpdateBasic
Create Proc dbo.procUpdateBasic
@Name VarChar(25),
@Email VarChar(100),
@Title VarChar(150),
@ModifyIP VarChar(15),
@ModifyDate DateTime,
@Content Text,
@Encoding VarChar(10),
@Homepage VarChar(100),
@Num Int
As
Update Basic
Set
Name = @Name,
Email = @Email,
Title = @Title,
ModifyIP = @ModifyIP,
ModifyDate = @ModifyDate,
Content = @Content,
Encoding = @Encoding,
Homepage = @Homepage
Where Num = @Num
Go
--테스트URL : http://sample.redplus.net/Web/Basic/List.aspx
--작성자 : 박용준(RedPlus)