Pages

Subscribe:

Ads 468x60px

Labels

顯示具有 odbc 標籤的文章。 顯示所有文章
顯示具有 odbc 標籤的文章。 顯示所有文章

2015年9月3日 星期四

Using ODBC with PHP

資料來源


Using ODBC with PHP ODBC is one of Microsoft's earliest technologies for connecting to databases. It is very popular and widely used. This article describes how to setup and use ODBC from a PHP perspective.
Also see DSN-less connections with PHP.

What is ODBC?

Open DataBase Connectivity is an Application Programming Interface (API) that allows a programmer to abstract a program from a database. When writing code to interact with a database, you have to add code that talks to a particular database using a proprietary API. If you want your program to talk to an Access, FoxPro and Oracle databases you have to code your program with three different database API's. This can be quite the daunting task causing much grief. Now, enter ODBC...
When programming to interact with ODBC you only need to use the ODBC API (a combination of ODBC extension function calls and the SQL language) to talk to different database products. The ODBC Manager will figure out how to contend with the type of database you are targeting. Regardless of the database type you are using, all of your calls will be to the ODBC API. All that you need to do is have installed an ODBC driver that is specific to the type of database you will be using.

Creating A ODBC Data Source Name (DSN)

After you have ensured that the ODBC driver for your database is installed, you normally need to create a Data Source Name (DSN), which contains all the connection details required to login (accept maybe id and password).
Walkthrough: How to Setup a DSN. A pictorial step-by-step guide. The next button is hidden on the bottom-right. Sorry but we Windows programmers are not user interface experts ;-)

Connecting to ODBC

There is an excellent tutorial on using PHP's ODBC extension at ASPToday, a popular ASP web site.
An example taken from the above article:

# query the users table for name and surname
$query = "SELECT name, surname FROM users";
# perform the query $result = odbc_exec($connect, $query);
# fetch the data from the database while(odbc_fetch_row($result)){ $name = odbc_result($result, 1); $surname = odbc_result($result, 2); print("$name $surname\n"); }
# close the connection odbc_close($connect); ?>

odbc 在 windows 7 找不到 sql server 2005

資料來源

狀況
本人有一台 sql server 2005 在 winxp 下設定 odbc 都可以順利設定好 odbc,並且讀取寫入資料都沒問題,可是到另一台電腦 win7 32位元 旗艦版,在 設定 odbc [系統資料來源名稱] 時就無法,自動抓到伺服器名稱,odbc 的驅動除了win7 的SQL SERVER 外,並再加裝了 SQL Natine Client 及 ODBC Driver 11 for SQL SERVER 也是抓不到伺服器名稱,一直試不出來,各位狐友先進們,可有遇到如此情形啊..感謝賜教

找找在 
c:\windows\system32\下有沒有 odbcad32 
執行它,用這個來安裝看看

防火牆關掉試試,若可以連的話 
1433 port 要打開

有關windows7執行vfp6的程式,去連線主機的sql server2008,經常會當掉或很慢導致資料遺失!!

資料來源

狀況
各位大大好,好久沒有在上面提出問題了, 
不過這陣子有個問題困擾我一段時間了,不知各位大大有什麼看法!! 

我本身有一套在xp開發的vfp6的程式!! 
安裝在客戶的xp電腦後連線到主機的sql server執行上都不會當掉也不會突然變慢, 
但開始客戶換電腦後,變成部份win7電腦,問題開始發生了 

客戶同時有好幾台電腦程式在存取主機的sql server2008, 
xp電腦的程式就跑的很順不會當也不會突然變慢, 
但win7電腦的程式就會跑的突然變慢,或者還會開一陣子程式後會突然當掉 

解決

若你的exe檔 是放在一台主機,使用分享目錄的方式,則win7會變很慢!ms 在win7,win8以後,將很多權限控管收回 
支持這種samba 變的很不穩定!

sqlstringconnect建議用ip連,不要用主機名稱連

我的經驗是:用WIN7 +SPT (ODBC指定IP連),且不用VIEW ,50臺電腦跑,速度均一致!(後台一樣SERVER2008 64BIT) 
不會有XP比較快....................請查一下你的線路及HUB,這方向思考看看! 
最簡單的是留一台 WIN7工作站+SERVER,就這兩台串在一個HUB上來測試一下!


在Windows 7 設ODBC無法連上 Server端之SQL server 2008 r2

資料來源
狀況
在Windows 7 設ODBC無法連上 安裝在Windows server 2012 R2 foundation 之 
SQL server 2008r2 

連線失敗: 
Sqlstate :'01000' 
Sql server 錯誤:10061 
[Microsoft][ODBC Sql Server Driver][TCP/IP Sockets] connectionOpen(Connect()) 
連線失敗: 
Sql State:'08001' 
Sql Server 錯誤:17 
[Microsoft][ODBC Sql Server Driver][TCP/IP Sockets]SQL Server 不存在或拒絕存取。 

通常問題在 sql server 2008 r2 上. 

1.先確認client pc 及 server 的防火牆有沒有開啟. 不確定PORT有沒有開對就先關掉. 
2.sql server 2008 r2 的 Configutration Manager 中,每個 SQL Native Configuration 中的 TCP/IP 是不是 Enable,port 對不對 
3.sql server 2008 r2 的 Configutration Manager 中,SQL Server Services 中的 SQL Server Browser 及 SQL Server Agent 是不是 running ,不是就啟動一下. 
4.如果是 X64 版的WIN7, ODBC 是這個才對. C:\Windows\SysWOW64\odbcad32.exe