웹마스터 팁

PHP+MSSQL?(수정판)

2003.05.10 19:38

씨파개

PHP 의 DB? 를 하시면 거의다 MYSQL 로 대답을 하실겁니다..
벗.. 디비 이즈 여러가지..ㅋㄷ
말씀대로.. 디비는 여러가지의 종류가 있습니다.
SQL7.0 , MSSQL2000Ent..등...
여기서 제로보드또는 php 와 연동할때 MYSQL 대신 쓰는 디비라면.. MSSQL2000 이나 SQL7.0을 추천해주시고싶습니다. mSQL 등은 한번도 안써봣고.. 그런 소문도 없어서요...mSQL 개발사이트 지금쯤이면 망했겟죠?^^;;
MSSQL 이 없으시다면.. 그냥.. 와레즈에서.. 슬쩍..ㅋㄷ
그리고 .. PHP 에서.. 환경모듈파일이던가? 그쪽 경로를 재대로 해주시고 MSSQL 모듈읽는부분 주석을 풀어주세요..
자세한 방법은 PHPSCHOOL 에 있습니다.
MSSQL 은 MYSQL 에 비해 단어도? 틀리고.. 쿼리문을 할때 틀린점이 있습니다.
예를들어.. MYSQL 에서는 뽑아올떄 limit 로 뽑아오지만 MSSQL 에서는 Top 라는것을 이용해 뽑아옵니다.
그러나.. 제가 멍청이라그런지.. Order By 이쪽에서.. 많이 햇갈렷습니다..
Order By Desc 로 했는데.. 에러가 떳습니다..ㅡㅡ;; 그래서.. 2일동안 머리를 주어뜯으면서..ㅡㅡ;;;; 해결했습니다.
바로 조건문이 빠졋던것입니다.
Order By No Desc 로 하니깐.. 번호대로 나열되더라구요...^^
PHPSCHOOL 에 없는 내용을 보충해 봤습니다.
쏘쓰.. 요리 쏘쓰..ㅋㄷ
$result=mssql_query("select top 3000 * from Dataing order by no desc");// 3000개를 불러오고.. 최근것만 뽑아옵니다.
while($data=mssql_fetch_array($result)){
   echo "$data[no]";<BR>";
}
이렇게하면.. 1234564 이라는 데이터가 있다면.. 3000개만 출력되겟죠.. 그러나.. 1부터 읽어들이려면.. desc 부분을 asc 로 바꿔주시면된답니다.
수정부분입니다...ㅡㅡ;;; 아래 행복님의.. 지적으로...
Conn 부분도 MYSQL 과 비슷합니다.. 단지.. 글자가 틀린다는것..
$hostname = "localhost";
$username = "sa";
$password = "*****";
$dbid = "df";//DB 테이블
$connection = mssql_connect($hostname,$username,$password) or die("데이타 베이스에 연결 할수 없습니다.");
mssql_select_db($dbid, $connection);
제가 Sa 계정으로 로그인을 했습니다. 왜 그럴까요? 제가 서버 관리자 이며.. 제가 관리하기 때문에..ㅋㄷ;;;;
그리고.. dbid 라는 변수명이 보일텐데 이것은 테이블 이름을 적어주시면 됩니다..^^;;
호스트는 대부분 localhost 이기떄문에.. 그냥 나두시면 됩니다.
아참 mssql_xxxx 할때.. 앞에 @를 붙이면 에러 메시지가 안나와서.. 깔끔하답니다.
그러나.. 접속이 실패해도.. 지정한 에러메시지는 나오겟죠.^^;
그리고 데이터의 총 갯수를 구하려면.. 다음과 같이 만들어 주시면됩니다.
$que ="select  * from 테이블 이름.";
$res = MSSQL_QUERY($que, $connection);
$res_count = MSSQL_NUM_ROWS($res); // 데이터의 총 갯수
이떄 res 다음에 connection 은 데이터 베이스에 접속하는 변수인거 아시죠?? 위쪽을.. 보세요.^^
마지막으로.... 맨 하단에는
mssql_close($connection); //닫음
이것을 붙여주어야.. 쿼리가 끝납니다....
소문으로는 안붙여줘도.. 쿼리가 끝나면 자동으로 닫아준다는..;;;;
소문이니 ...
이렇게 하시면 됩니다..;;;;;;;;;;
보충할 내용있으면 말해주세요.