目前使用的是ODBC來進行連結。

安裝完Visual Studio跟phpMyadmin。



(這裡是參考IIS7 + ASP+ PHP + MySQL + PHPMyadmin 懶人包)

 

下載ODBC driver mysql-connector-odbc

這邊是下載mysql-connector-odbc-5.1.12-win32.msi(這邊很重要,見※註一)

安裝完成後,打開 控制台>系統管理工具>資料來源(ODBC)進行設定。

到"使用者資料來源名稱">新增>"MySQL ODBC 5.1 Driver"

--

Data Source Name:打個你記得住的,表示這個連結

TCP/IP Server:有安裝phpMyadmin電腦的IP(如果是你自己,就是127.0.0.1)

Port:維持3306

User:登入phpMyadmin的帳號

Password:登入phpMyadmin的密碼

Database:要登入的資料庫名稱

--

按Test,有出現

Test Result
---------------------------
Connection successful

就表示成功了!

按下OK儲存。


※註一:

在這邊我遇到第一個問題:

ERROR [IM014] [Microsoft][ODBC 驅動程式管理員] 指定之 DSN 中的驅動程式和應用程式架構不相符

 指定之 DSN 中的驅動程式和應用程式架構不相符  

查了很久很久之後,才發現原來是ODBC驅動的問題。

因為ODBC的驅動程式有32位元跟64位元,

32位元的ODBC driver在C:\Windows\SysWOW64\odbcad32.exe

64位元的ODBC driver在C:\Windows\System32\odbcad32.exe

(雖然打開來畫面都依樣,可是他們其實是不一樣的東西!!!!)

我因為電腦是64位元的win7,所以下載了64位元的ODBC driver

可是因為我的Visual Studio 2010是安裝在C:\Program Files (x86),也就是安裝x86(32位元)

 所以才會有這種問題。

解決方式就是在安裝32位元的ODBC driver就可以囉!


開始連接資料庫

(這裡參考VB.NET連接MySQL範例的方法二)

我使用SqlDataSource

所以一開始要加入參考

選擇網站>加入參考>瀏覽>MySql.Data.dll

(請自行尋找有安裝MySql.Data.dll的位置) 

接著在a.aspx新增一個SqlDataSource

設定資料來源>選擇剛剛在ODBC上設定的Data Source Name的名稱>幫他命名

以後就用這個連結就可以了!

然後選擇"指定自訂SQL陳述式或預存程序(S)"!一定要選這個!因為ODBC連結的語法有一點點點不一樣!

語法部分

Select:  SELECT 欄位名稱 FROM 表單名稱 WHERE (欄位名稱 = @ TextBox1)

Inster:  INSERT INTO 表單名稱 (欄位名稱) VALUES (?); ※見註二

Update: UPDATE 表單名稱 SET 欄位名稱 = ? WHERE 篩選的欄位名稱 = ?;

Delect: DELETE FROM 表單名稱 WHERE 篩選的欄位名稱 = ?;


※註二

這裡是第二個大問題。

因為我原本的語法是INSERT INTO 表單名稱 (欄位名稱) VALUES (@欄位名稱);

可是一直出現ERROR [HY000] [MySQL][ODBC  Driver][mysqld- -log]Column '我的欄位的名稱' cannot be null

問題是我明明就有輸入值!

最後是看到這篇這篇想說姑且一試...登愣!(心裡暗罵髒話)

然後才發現我原本參考的網站本來就寫?...(艸

 

arrow
arrow
    全站熱搜

    迷路死小鬼 發表在 痞客邦 留言(0) 人氣()