카테고리 없음2013. 6. 15. 12:30

▶ PHP를 이용한 SQL서버 연동 프로그래밍

안녕하세요. 코난입니다. 이번에 소개해드릴 내용은 PHP를 이용해서 SQL서버에

접근하는 프로그래밍 입니다. http://phpschool.com 에서 활동하시는 장기호님이

자료 제공을 허락해 주셨습니다. - 다시한번 감사 드립니다.

PHP로 SQL서버에 접근하는 샘플을 찾고 계시는 SQL서버 개발자 분들께 많은

도움 되시길 바랍니다.

 

 

MicroSoft SQL 2000 과 PHP 연동하기

알아야 할 사항

① PHP설치및 PHP 기본적인 문법

② SQL 기본 지식

목차

1. MicroSoft SQL 2000설치시 유의사항

2. MicroSoft SQL 2000에서 새로운 데이타 베이스 만들기

3. MicroSoft SQL 2000에서 새로운 사용자 추가

4. ODBC 데이타 베이스 원본 관리자에서 데이타 베이스 추가 시키기

5. PHP와 연동하기

1. MSSQL 서버에 연결하기

2. 데이타 베이스 선택하기

3. MicroSoft SQL 2000 에서 테이블 만들기

4. Query를 이용하여 테이블 만들기(Not Yet)

5. Query를 이용하여 데이타 삽입

6. Query를 이용하여 데이타 업데이트

7. Query를 이용하여 SEARCH VIEW 만들기

8. Query를 이용하여 데이타 지우기

9. Query를 이용하여 테이블 ReSet하기

본문

1. MicroSoft SQL 2000설치시 유의사항

SQL2000을 Setup 할때, 아래 그림같은 DialogBox가 나올때 그림의 빨간 박스처럼

설정하세야 합니다. 이렇게 하지않으면 PHP나 SQL에서 접속이 되지 않는 것 같네요

(코난 주석 : 반드시 할 필요는 없습니다. SQL2000 강좌의 설치를 참고하세요.)

2. MicroSoft SQL 2000에서 새로운 데이타 베이스 만들기


SQL2000의 관리자(혹은 엔터프라이즈 관리자)를 실행 하시고

그림처럼 이동하시면 데이타 베이스라는 항목이 나옵니다.

마우스 오른쪽 버튼클릭하시고 새 데이타 베이스를 선택하세요

새 데이타 베이스를 선택하면 아래의 데이타베이스 속성

Dialog가 나옵니다 여기서 이름을 입력하시고 확인 버튼을 누르세요

여기서 입력하신 이름은 PHP에서 데이타베이스를 선택할때 사용합니다.

3.MicroSoft SQL 2000에서 새로운 사용자 추가

[그림1]

[그림1]을 참고하여 보안->로그인 에서 마우스 오른쪽버튼을

누르고 새로그인을 선택하세요.

[그림2]을 참고하여 이름과 암호 데이타베이스를 선택하세요

[그림2]

이름,암호는 후에 PHP에서 데이타베이스에 접속할때 사용됩니다.

데이타베이스는 위에서 만든 데이타베이스를 선택하시면 됩니다.

[그림3]

데이터베이스 액센스 택을 선택하시면 [그림3]과 같은 Dialog를 보실수 있는데

위에서 만든 데이타베이스를 선택하세요

그리고 데이타 베이스 역활 섹션에서는 db_owner를 선택해주세요 이를 선택해야지

PHP에서 table reset을 할수 있습니다.

db_owner은 자신의 것이라고 알려 주는것입니다.

4.ODBC 데이타 베이스 원본 관리자에서 데이타

베이스 추가 시키기

제어판>관리도구>ODBC 관리자 를 실행하고 나면 위의 그림과 같은 창이 나옵니다.

이때 시스템 DSN 택을 선택하시고 추가 버튼을 누르시면 새 데이타 원본만들기라는 Dialog가 나옵니다 이때 선택할 드라이버는 SQL Sever입니다.

마침을 누르시면 아래와 같은 Dialog가 나옵니다.

여기서 할일은 이름을 입력하고(아무이름이나) 서버는 (local)입니다

(local)은 컴퓨터가 한대일경우 선택… 두대이상일경우는 ? (전 잘 모르겠네요.

한대뿐이라…) 이제 다음 을 누르고 나면 아래와 같은 Dialog가 나옵니다.

위의 그림 처럼 설정하시고

새 사용자 추가에서 만든 이름과 암호를 입력합니다.

그 밖의 설정들은 디폴트로 해주시면 끝납니다.

5.1.MSSQL 서버에 연결하기

<PRE>

<h1>데이타 베이스 연결</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.");

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

5.2.데이타 베이스 선택하기

<PRE>

<h1>데이타베이스 선택하기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db(“test”))//test는 위에서만든 데이타베이스 이름.

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

5.3.MicroSoft SQL 2000 에서 테이블 만들기

SQL관리자에서 위에서 만든 데이타 베이스로 간다음 , 데이블을 만든다.

그리고 위의 그림 처럼 테이블을 디자인 한다.

5.4.Query를 이용하여 테이블 만들기(Not Yet)

5.5.Query를 이용하여 데이타 삽입

<PRE>

<h1>INSERT 하기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db("test"))//test는 위에서만든 데이타베이스 이름.

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

//데이타 입력하기.

$no = 0;

$name = "name";

$uptime = date ("Y-m-d");

$topic = "Test";

$text = "냉뮤";

$password = "11";

$query = <<<EOD

INSERT INTO bbs VALUES

("$no","$name","$uptime","$topic","$text","$password")

EOD;

mssql_query($query);

//--------------------------------------------------------------

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

5.6.Query를 이용하여 데이타 업데이트

<PRE>

<h1>UPDATE 하기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db("test"))

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

//데이타 UPDATE 하기

$no = 0;

$name = "이름";

$uptime = date ("Y-m-d");

$topic = "Test";

$text = "냉뮤";

$password = "11";

$text = "업데이트 됐어요";

$query = <<<EOD

UPDATE bbs SET text = "$text" WHERE no = 0

EOD;

mssql_query($query);

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

5.7.Query를 이용하여 SEARCH VIEW 만들기

<PRE>

<h1>SEARCH VIEW만들기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db("test"))

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

$no = 0;

$name = "name";

$uptime = date ("Y-m-d");

$topic = "Test";

$text = "하하하하하하하하바보하하하하하하하하하하하하하";

$password = "11";

$search_text = "바보";

$query = <<<EOD

INSERT INTO bbs VALUES

("$no","$name","$uptime","$topic","$text","$password")

EOD;

mssql_query($query);

//SEARCH VIEW만들기

$query = <<<EOD

CREATE VIEW searchview(no,name,uptime,topic,text,password) AS

SELECT no,name,uptime,topic,text,password FROM bbs WHERE text like "%$search_text%"

EOD;

print("view 가 생성되었습니다");

mssql_query($query);

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

$query = <<<EOD

DROP VIEW searchview

EOD;

mssql_query($query);

print("View가 삭제 되었습니다");

?>

5.8.Query를 이용하여 데이타 지우기

<PRE>

<h1>DELETE 하기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db("test"))

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

$no = 0;

$name = "22";

$uptime = date ("Y-m-d");

$topic = "Test";

$text = "냉뮤";

$password = "11";

$query = <<<EOD

INSERT INTO bbs

VALUES("$no","$name","$uptime","$topic","$text","$password")

EOD;

mssql_query($query);

print ("INSERT했습니다<br>");

//DELETE

$query = <<<EOD

DELETE bbs WHERE no = 0

EOD;

mssql_query($query);

print("DELETE 했습니다<br>");

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

5.9.Query를 이용하여 테이블 ReSet하기

//ower권한이 있어야 한다.

<PRE>

<h1>TABLE RESET 하기</h1><hr>

<?php

$hostname = "localhost";

$username = "name";

$password = "password";

$connection = mssql_connect($hostname,$username,$password)

or die("데이타 베이스에 연결 할수 없습니다.");

print ("데이타 베이스에 연결되었습니다.<br>");

if(mssql_select_db("test"))

{

print ("성공<br>");

}

else

{

print("실패<br>");

}

$no = 0;

$name = "name";

$uptime = date ("Y-m-d");

$topic = "Test";

$text = "냉뮤";

$password = "11";

$query = <<<EOD

INSERT INTO bbs

VALUES("$no","$name","$uptime","$topic","$text","$password")

EOD;

mssql_query($query);

print ("INSERT했습니다<br>");

//DELETE

$query = <<<EOD

TRUNCATE TABLE bbs;

EOD;

mssql_query($query);

print("TABLE RESET 했습니다<br>");

mssql_close($connection);

print ("데이타 베이스의 연결이 해지 되었습니다.");

?>

작성자 : youco@넷츠고.com

▶ PHP를 이용한 SQL서버 연동 프로그래밍 문서의 끝입니다.

Posted by 아이맥스