작업 데이터베이스는 동적 웹 프로그래밍의 기초,이 기사 PHP에 대 한 자세한 소개를 하면 MySQL 데이터베이스를 작동 하는 방법
1. 설정 및 연결
1) mysql_connect)
리소스 mysql_connect ([호스트 이름 문자열 [: p 오] [: / 경로 / / 소켓] [, 사용자 이름 문자열] [, 문자열 암호]])
모든 매개 변수는 선택 사항
예:
@mysql_connect ("localhost", "사용자" "암호")
또는 다이 ("연결할 수 없습니다 MySQL 서버에!");
참고는 @ 기호 나타냅니다 실패 한 시도 방해 하는 모든 오류 메시지 및 사용자 죽을 ()에 지정 된 오류 메시지가 표시 됩니다.
참고 여러 MySQL에 연결할 때 지정 해야 합니다 각 연결에 대 한 링크 ID 다음과 같습니다.
$link 1 = @mysql_connect ("Server1″, 사용자" "암호")
또는 다이 ("연결할 수 없습니다 MySQL 서버에!");
$link 2 = @mysql_connect ("Server2″, 사용자" "암호")
또는 다이 ("연결할 수 없습니다 MySQL 서버에!");
(2) Mysql_pconnect)
리소스 Mysql_pconnect ([호스트 이름 문자열 [: p 오] [: / 경로 / / 소켓] [, 사용자 이름 문자열] [, 문자열 암호]])
Mysql_connect ()와 달리 기존 링크 먼저 발견 되 고 있는 때까지 만들어지지 않습니다.
참고 닫기 연결 표시 필요가 없습니다 (Mysql_close ())는 연결 풀에 배치 됩니다, 때문에 그것은 소위 영구 연결.
3) Mysql_close)
부울 mysql_close ([리소스 link_id])
연결을 닫기 때문에 MySQL 가비지 수집에 의해 처리 될 수 있습니다 필요 하지 않습니다.
Link_id을 지정 하지 않은 경우 가장 최근의 링크를 닫습니다.
2. 데이터베이스 선택
mysql_select_db)
부울 mysql_select_db (문자열 db_name [, 리소스 link_id])
3. MySQL 쿼리
1) mysql_query)
리소스 mysql_query (문자열 쿼리 [, 리소스 link_id])
쿼리 실행에 대 한 책임.
2) Mysql_db_query ()
리소스 Mysql_db_query (문자열 데이터베이스, 문자열 쿼리 [, 리소스 LINK_ID]
는 mysql_select_db () + mysql_query ()에서 매개 변수.
명확 하 게 볼 수 있는
4. 고 표시 데이터
1) mysql_result ()
혼합 mysql_result (리소스 result_set int 행 [, 혼합된 필드 간단 하지만 비효율적인
result_set 지정된 된 행에 있는 필드에서 데이터를 가져옵니다.
예:
$link 1 = @mysql_connect ("Server1″, WebUser", "비밀 번호")
또는 다이 ("연결할 수 없습니다 MySQL 서버에!");
@mysql_select_db (이 하 ' 회사') 또는 다이 ("수 없습니다 데이터베이스 선택!");
$query = "선택 ID 이름으로 제품 주문에서 이름";
$result = mysql_query ($query);
$id = mysql_result ($result, 0, "id");
$name = mysql_result ($result, 0, "이름");
Mysql_close ();
참고 위의 코드는 그냥 출력 집합에 첫 번째 데이터의 필드 값 및 모든 레코드를 출력 하려는 경우 당신은 재활용 해야 합니다.
& hellip;
대 한 ($i = 0; $i < = mysql_num_rows ($result); $i + +)
{
$id = mysql_result ($result, 0, "id");
$name = mysql_result ($result, 0, "이름");
에코 "제품: $name ($id)";
}
...
참고 쿼리 필드 이름 별칭 경우 별칭 Mysql_result에 사용 됩니다.
(2) mysql_fetch_row)
배열 mysql_fetch_row (자원 result_set)
Result_set에서 전체 행을 가져오고 배열에 데이터를 넣어.
(참고 목록 독창적인 적합) 예:
...
$query = "선택 ID 이름으로 제품 주문에서 이름";
$result = mysql_query ($query);
동안 (목록 ($id, $name) = Mysql_fetch_row ($result)) 없음
에코 "제품: $name ($id)";
}
...
3) mysql_fetch_array)
배열 mysql_fetch_array (자원 result_set [, int result_type])
Mysql_fetch_row ()의 향상 된 버전입니다.
연관 배열 또는 배열에 Result_set의 각 행을 가져옵니다 / 및 숫자 색인.
두 배열은 기본적으로 얻을 수 있습니다 그리고 Result_type 설정할 수 있습니다.
MYSQL_ASSOC: 반환 연관 배열, 필드 이름 = > 필드 값
Mysql_num: 숫자 인덱스의 배열을 반환합니다.
Mysql_both: 되 면 두 개의 배열. 그러므로, 각 필드 참조할 수 있습니다 인덱스 오프셋 또는 필드 이름.
예:
...
$query = "선택 ID 이름으로 제품 주문에서 이름";
$result = mysql_query ($query);
동안 ($row = Mysql_fetch_array ($result, Mysql_both)) {
$name = $row [' 이름 ']; //or $name = $row [1];
$name = $row [' id ']; //or $name = $row [0];
에코 "제품: $name ($id)";
}
...
4) Mysql_fetch_assoc)
배열 Mysql_fetch_assoc (자원 result_set)
Mysql_fetch_array ($result, MYSQL_ASSOC)에 해당
5) Mysql_fetch_object)
개체 Mysql_fetch_object (자원 Result_set)
Mysql_fetch_array () 기능에서와 마찬가지로 반환 배열, 하지만 개체 되지 않습니다.
예:
...
$query = "선택 ID 이름으로 제품 주문에서 이름";
$result = mysql_query ($query);
동안 ($row = Mysql_fetch_object ($result)) 없음
$name = $row-> 이름;
$name = $row-> id;
에코 "제품: $name ($id)";
}
...
5. 레코드를 선택 하 고 레코드에 영향을
1) mysql_num_rows)
int mysql_num_rows (자원 result_set)
Result_set 행 수를 반환합니다.
Note는 mysql_num_rows ()만 유효 SELECT 문은 쿼리에서 가져온 레코드 수를 결정 하 고 삽입/updata/삭제 쿼리에 의해 영향을 받는 레코드 수를 얻을 하려는 경우 Mysql_affected_rows ()를 사용 해야.
(2) Mysql_affected_rows)
int Mysql_affected_rows ([리소스 link_id])
삽입/updata/삭제 쿼리에 의해 영향을 받는 레코드 수를 얻을
매개 변수를 입력 해야 하 고 기본값은 가장 최근 결과 사용 하는 최근에 설립 된 데이터베이스 연결의 데이터베이스 연결을 선택 하는 선택적 매개 변수 link_id를 사용할 수 있습니다.
6. 데이터베이스 및 테이블에 대 한 정보를 얻을
1) Mysql_list_dbs)
리소스 Mysql_list_dbs ([리소스 link_id])
서버에 모든 데이터베이스 이름을 가져옵니다.
예:
mysql_connect ("localhost", "이름", "pwd");
$dbs = Mysql_list_dbs ();
동안 (목록 ($db) = Mysql_fetch_row (DBS)) 없음
에코 "$db < br >";
}
참고 출력 사용 되는 사용자 권한 관련.
(2) Mysql_db_name)
Mysql_db_name (자원 Result_set, Interger 인덱스) 문자열
Mysql_list_dbs ()에서 반환 된 Result_set에서 데이터베이스의 이름을 가져옵니다 인덱스입니다.
3) Mysql_list_tables)
리소스 Mysql_list_tables (문자열 데이터베이스 [, 리소스 link_id])
데이터베이스에서 모든 테이블 이름을 가져옵니다.
4) Mysql_tablename)
Mysql_tablename (자원 Result_set, Interger 인덱스) 문자열
Mysql_list_tables ()는 인덱스를 반환 합니다 어디 result_set 테이블 이름을 가져옵니다.
학습 php에서 com과. Net (윈도) 기능, 나 관련 정보에 대 한 보였다 COM 작업을 통해 SQL Server의 경우 발견이 PHP 연결 액세스 문서 그래서, 믿습니다 인터넷 많습니다, 또는 여기에 게시.
내 컴퓨터 환경: win2000, apache2, php 버전 5.1.0RC1
<? php
$conn = 새로운 COM ("ADODB. 연결 ") 또는 죽을 ("시작할 수 없습니다 ADODB. 연결 ");
$conn-> 개방 ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\php5\netbook.mdb");
$rs = $conn-> 실행 ("선택 * 관리에서"); //Recordset
$num _columns = $rs-> 필드 coun-> T ();
에코 $num _columns입니다. "< br / > n";
위한 ($i = 0 $i < $num _columns $i + +) {
$fld [$i] = $rs-> 필드 ($i);
}
$rowcount = 0;
동안 (! $rs-> eof) {
위한 ($i = 0; $i < $num _columns; $i + +)
& nb Sp; {
에코 htmlspecialchars ($fld [$i]-> 값). "T";
}
에코 "< br / > n";
$rowcount + +; //ROWCOUNT 자동 증가
$rs-> movenext ();
$rs → close (); //Close 데이터 집합
$conn → close ();
?;