使用者工具

網站工具


php:mssql

FreeBSD 透過 PHP 連接 MS SQL Server

安裝 php5-mssql

# cd /usr/ports/databases/php5-mssql && make install clean

安裝 freetds-msdblib

# cd /usr/ports/databases/freetds-msdblib && make install clean

設定檔:/usr/local/etc/freetds.conf

[global]
  tds version = 4.2
  text size = 64512

[testdb]
  host = 192.168.1.1
  port = 1433
  client charset = CP950
  tds version = 8.0

測試範例:

// server name 要使用 freetds.conf 裡面定義的設定值
$link = mssql_connect("testdb", "username", "password");
mssql_select_db("Northwind", $link);
$result = mssql_query("SELECT * FROM Employees", $link);
while ($row=mssql_fetch_row($result)) {
  echo $row[0].$row[1].$row[2];
}

將 MS SQL 的 datetime 轉成 MySQL 的預設格式

CONVERT (varchar(20), fieldname, 120) AS fieldname
ex: SELECT message, CONVERT (varchar(20), message_date, 120) AS message_date FROM msg_table

其他可轉換格式:

CONVERT(varchar(256), GETDATE(), 100)
--11 8 2007 5:57PM 

CONVERT(varchar(12), GETDATE(), 101)
--06/11/2007 
 
CONVERT(varchar(12), GETDATE(), 102)
--2007.11.06 
 
CONVERT(varchar(12), GETDATE(), 103)
--06/11/2007 
 
CONVERT(varchar(12), GETDATE(), 104)
--06.11.2007 
 
CONVERT(varchar(12), GETDATE(), 105)
--06-11-2007 
 
CONVERT(varchar(12), GETDATE(), 106)
--06 11 2007 
 
CONVERT(varchar(12), GETDATE(), 107)
--11 06, 2007 
 
CONVERT(varchar(12), GETDATE(), 108)
--00:42:43 
 
CONVERT(varchar(12), GETDATE(), 109)
--11 8 2007 5:57:23:233PM 
 
CONVERT(varchar(12), GETDATE(), 110)
--11-06-2007 
 
CONVERT(varchar(12), GETDATE(), 111)
--2007/11/06 
 
CONVERT(varchar(12), GETDATE(), 112)
--20071106 
 
CONVERT(varchar(12), GETDATE(), 113)
--06 11 2007 0 
 
CONVERT(varchar(12), GETDATE(), 114)
--00:44:10:780 
 
CONVERT(varchar(256), GETDATE(), 120)
--2007-11-08 17:56:51 
 
CONVERT(varchar(256), GETDATE(), 121)
--2007-11-08 17:56:30.687
php/mssql.txt · 上一次變更: 2009/03/23 10:24 由 wenpei