Title: PHP ODBC
1?????? PHP ??????????????????? ODBC
2?????????????????? ODBC
- ODBC (Open Database Connectivity)
?????????????????????????????????????? - Microsoft Access, Microsoft FoxPro, Visual
FoxPro, dBase ??? Excel - ?????????????? ???????????????????????????????????
???
3?????????????????????????
- odbc_connect() ??????????????? ODBC data source
??????????? Data Source Name(DSN), ??????????
??????????? - odbc_prepare() ??????????????????????? SQL
??????????????????? - odbc_execute() ??????????????????????? SQL
- odbc_result_all() ????????????????????????????????
? HTML
4?????????????????????????
- odbc_free_result() ??????????????
resource????????????????????? - odbc_close() ?????????????????????????????????????
?????????
5????????????????????????????
- 1. ????????????????????????????????????????
odbc_connect() ?????? - connection odbc_connect(DataSourceName,usern
ame,password) - or die(?????? DataSource ??????)
- ?????? connection ?????????????????????
Datasource - DataSourceName ??????? Data Source Name
6????????????????????????????
- Username ?????????????
- Password ????????????????????????????????????
- Die() ??? ??????????????????????????????
??????????????????????????????????????????????????
???????????????? ? ?????????
7????????????????????????????
- 2. ??????????? SQL ?????????????????????
??????????????????????? - sql SELECT field 1, field 2,, fieldn FROM
tablename ORDER BY fieldname strorder - sql ????????????????????? SQL
- field 1, field 2,., fieldn ???
?????????????????????? (?????????????????????????
select )
8????????????????????????????
- tablename ??? ???????????????????????????????
- fieldname ??? ???? ?????????????????????????
- strorder ??? ???????????????????? ?????? ASC
(?????????????????) ??? DESC (?????????????????)
9????????????????????????????
- 3. ?????????????????????????? SQL ????????????
?????????????? odbc_prepare() ????????????????????
??????? - sql_statement odbc_prepare(connection,sq
l) or - die(?????????????????)
10????????????????????????????
- 4.????????????????????????????????????????????????
????? odbc_execute() ?????????????????? - sql_result odbc_execute(sql_statement) or
- die(???????? ??????????)
- 5.????????????????????????????????? HTML
???????????? odbc_result_all() ?????????????????? - odbc_resolt_all(sql_result, border1)
11????????????????????????????
- 6.????????????????????????Resource????????????
??????????????? ??????????? odbc_free_result()
??? odbc_close() ?????????????? - odbc_free_result(sql_result)
- odbc_close(connection)
12??????????????????????????????????????????????????
???? ODBC
- lt?php
- // ?????????????? data source
- connection odbc_connect(DataSourceName,
username,password) or die(?????? data
source ??????) - // ?????????? SQL
- sql SELECT field1,field2 FROM database_name
- ORDER BY field_name
13??????????????????????????????????????????????????
???? ODBC
- // ???????????? SQL
- sql_statement odbc_prepare(connection,sql)
or die(?????????????????) - // ???????????????????????? HTML
- odbc_result_all(sqlresuslt, border1
- // ????????resource?????????????????????
??????????????? - odbc_free_result(sql_result)
- odbc_close(connection)
- ?gt
14?????????????????????
- ???????????????
- 1. ????????????????????
- 2. ??????????? SQL ??????????????
- 3. ??????????
- 4. ?????????????????????
15???????????????
- ??????????? odbc_connect() ??????????????????
- odbc_connect(dsn, user, password) or
die(message) - ?????? dsn ????????????????????? DSN
- user ??????????????
- password ??? ????????????????????????????????????
???????? DSN - or die(message) ????????????????????????????????
???????????
16????????
- ?????????????????????? ODBC ??? DSN ???????
bookshop ????????????????????????????? - dsn bookshop
- user
- pass
- connect odbc_connect(dsn, user, pass)
17??????????? SQL ???????????
- ?????????????? SQL ????????????????
?????????????? odbc_exec() ????????????????? - SELECT field1, field2,,fieldN FROM tblname
?????????????????????????? - SELECT FROM tblname ???????????????????
- ?????? field1, field2,,fieldN
????????????????????????????????? - ???????????????????
- tblname ?????????????????????????
18????????
- sql select from book
- odbc_exec(connect, sql) //???????????????????
???????? - exec odbc_exec(connect, sql)
//????????????????????????????????????????? ?
19??????????????????????
- ??????????? odbc_result_all() ??????????????????
- odbc_result_all(exec, border 1)
- ?????? exec ???????????????????????????????????
? SQL - ????????????????????????
- ???????????? odbc_free_result() ??? odbc_close()
?????? - odbc_free_result(exec)
- odbc_close(connect)
- ?????? exec ????????????????????????????????????
SQL - connect ?????????????????????????
20????????
- ???????? exodbc.php ??????????????????????????????
?? DSN ??????? Bookshop ??????????????????
21????????????????????????
- ??????????? odbc_num_field(), odbc_field_name()
??? odbc_field_type() ???????? - ???????? exodbc02.php ???????????????????????????
???????, ???? ?????????????????????
22?????????????????????????
- ??????????? odbc_num_row() ???????????
- lt?php
- dsn bookshop // ????????? DSN
- user // ????????????????
- pass // ?????????????
- connect odbc_connect(dsn, user, pass) or
die (?????? DSN ??????) // ???????????????????
? - sql select from book // ???????????
SQL ??????????????? - exec odbc_exec(connect, sql) //
?????????????????????? SQL - num_rows odbc_num_rows(exec) //
??????????????????? - echo ????? Book ??????????????? ltFont color
redgt. num_rows - odbc_close(connect) // ???????????????
- ?gt
23??????????????????????????????????????????
- ???????? odbc_fetch_row() ??????????????????????
- ???????? exodbc04.php
24??????????????
- ????????? insert into ???????????
- insert into tbname (field1, field2,, fieldn)
values (val1, - val2, val3,, valn)
- ????????
- exodbc05.php ????????????????????????????????????
sql - exodbc06.php ??????????????????????????
sql????????
25??????????????????
- ???????????? PHP ?? 2 ???????
- ????????????????????????????? SQL ??? ?
- ??????????????????????????????????????????????????
???? - ???? 2 ???????????????
- select form tblname where condition
- ???????? exodbc08.php
- ???????? exodbc09.php, exodbc10.php
26??????????????
- ???????????? PHP ?? 2 ???????
- ????????????????????????????? SQL ??? ?
- ?????????????????????????????????????????????????
?????????????????????????????? - ???? 2 ???????????????
- UPDATE tblname SET field1 new_value , field2
new_value , WHERE condition - ???????? exodbc11.php
- ???????? exodbc12.php, exodbc13.php, exodbc14.php
27???????????
- ????????? delete ??????????????
- Delete from tblname where condition
-
- ???????? exodbc19.php ???????????????????????????
?????????? SQL ?????? - ???????? exodbc20.php ????????????????????????????
?????????
28????????????????????? (Paging)