[code]
<?php
/**
* XAMPP 3.2.2 가 설치된것을 가정하고...
* PHP와 MS SQL Server를 연동하기 위해서는 다음과 같이 하여야 한다.
*
* 1. MS SQL Server, MS SQL Server Management Studio를 설치하고 필요한 설정을 해준다.
* - Management Studio를 이용하여 서버에 기정값을 가지고 로그인한다.
* - 왼쪽리스트현시부의 제일 상위루트에서 마우스오른버튼을 클릭하여 properties에 들어간다.
* - 현시된 server properties 창에서 security항목에 들어간다.
* - server authentication mode에서 SQL server and Windwos Authentication mode를 선택해준다.
* - Ok버튼을 클릭 server properties 창을 닫는다.
* - 왼쪽리스트현시부의 Security/Logins에서 마우스오른쪽버튼를 누르고 New Login...을 선택한다.
* - 새 로그인계정을 창조하는 창이 뜨는데 Login Name을 먼저 입력해주고 SQL Server authentication을 지정해주며 필요한 암호를 설정해준다.
* - 계속하여 왼쪽에 있는 Server Roles라는 항목에 접근하여 새 계정의 roles에 sysadmin을 추가해준다.
*
* - Sql Server Configuration Manager를 기동하고 TCP/IP접근항목을 Enable시켜 remote접근을 허락해주어야 한다.
* - 마지막으로 SQL Server Service를 재기동한다.
* - Navicate같은 자료기지관리도구로 DB접속이 제대로 되는가를 확인한다.
*
* 2. PHP와 MS SQL Server를 련동하기 위한 PHP 플러그인 SQLSRV52.EXE을 설치한다.
* 이때 [XAMPP가 설치된 등록부]/php/ext/안에 플러그인들이 생성되도록 경로를 지정해주어야 한다.
*
* 3. [XAMPP가 설치된 등록부]/php/php.ini파일을 열어서 ; Dynamic Extensions ; 항목을 찾아 필요한 플러그인을 활성화한다.
* PHP7.0판본이라면 해당 플러그인의 파일명은 php_pdo_sqlsrv_7_ts_x86.dll 형식이다.
* 실례: extension=php_pdo_sqlsrv_7_ts_x86.dll
*
* 4. MS SQL Server를 구동하기 위한 ODBC플러그인을 설치한다. msodbcsql.msi
*
* 5. XAMPP서비스를 재기동한다.
*/
/**
* dbo.sql참고!!
* MS SQL Server 에 testdb라는 자료기지와 users라는 테블이 존재한다고 할때
* users테이블은 id, user_id, user_name이라는 3개의 마당으로 이루어졌다고 가정한다.
* id: PK, AI, int
* user_id: unique, varchar
* user_name: varchar
*/
/* Connect to a MS SQL database using driver invocation */
$PDO_SQLSRV_DSN = 'sqlsrv:Server=localhost;Database=testdb'; // 자료기지명 testdb로 지정
$user = 'jjb'; // 자료기지접속자명지정
$password = 'jjb'; // 자료기지접속암호지정
try {
$dbh = new PDO($PDO_SQLSRV_DSN, $user, $password); // MSSQLSERVER에 접속!
/**
* 여러개행 결과값 가져오기
*
*/
$sql = "SELECT * FROM users WHERE id > ?";
$id = 1;
$sth = $dbh->prepare($sql);
$sth->execute(array($id));
$result = $sth->fetchAll(PDO::FETCH_ASSOC);
//print_r($result);
for($i=0; $i<sizeof($result); $i++) {
echo "id: ".$result[$i]['id']." ";
echo "user_id: ".$result[$i]['user_id']." ";
echo "user_name: ".$result[$i]['user_name']." ";
echo "<br>";
}
/**
* 한개행 결과값 가져오기
*
*/
$sql = "SELECT MAX(id) AS max_id FROM users";
$sth = $dbh->prepare($sql);
$sth->execute();
$result = $sth->fetch(PDO::FETCH_ASSOC);
//print_r($result);
$max_id = $result['max_id'];
echo "등록된 id의 최대값: ".$max_id;
/**
* 테이블에 자료넣기
*
*/
$sql = "INSERT INTO users(id, user_id, user_name) VALUES(?,?,?)";
$new_id = $max_id + 1;
$sth = $dbh->prepare($sql);
$sth->execute(array($new_id, 'user'.$new_id, 'name'.$new_id));
/**
* 자료업데이트하기
*
*/
$sql = "UPDATE users SET user_name=? WHERE user_name=?";
$sth = $dbh->prepare($sql);
$sth->execute(array('newUserName'.$new_id, 'name'.$new_id));
/**
* 자료삭제하기
*
*/
$sql = "DELETE users WHERE user_name=?";
$sth = $dbh->prepare($sql);
$sth->execute(array('name'.$new_id));
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
[/code]
게시글 목록
| 번호 | 제목 |
|---|---|
| 17316 | |
| 17315 |
JavaScript
시계 스크립트 그런데 페이지 뜨는건 느린게 문제네...
|
| 17313 |
PHP
php 업로드 소스
4
|
| 17312 | |
| 17305 | |
| 17304 | |
| 17298 |
node.js
간단한 채팅
|
| 17294 | |
| 17291 | |
| 17285 | |
| 17284 |
JavaScript
두가지 형태의 페이지 로딩 [ 로딩중, 로딩 프로그레스바 ]
2
|
| 17279 | |
| 17272 | |
| 17271 |
JavaScript
관계에 따른 메뉴 구성방안
1
|
| 17270 | |
| 17262 | |
| 17255 | |
| 17248 |
JavaScript
엘레먼트 요소에서 data 를 이벤트 핸들러로 사용하기
4
|
| 17241 | |
| 17238 |
MySQL
interval에 쓸 수 있는 값
3
|
| 17236 |
PHP
탈퇴합니다.
6
|
| 17220 | |
| 17217 |
JavaScript
회원가입
2
|
| 17216 | |
| 17214 | |
| 17207 | |
| 17205 | |
| 17203 | |
| 17201 | |
| 17198 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기