這兩天幫乙個朋友除錯使用bdc(business data catalog)來連線mysql中的資料,發現不少需要特別注意的地方。在使用bdc連線時,mysql和ms sql server的區別還是很大的。
我的朋友在伺服器上是使用的myodbc這個driver。對於lobsysteminstance的定義,基本類似:
mysql伺服器名稱
mysql database名稱
root
123456
3true
不同的database driver,其connection string是不同的。所以如果你使用的並非myodbc driver,那麼lobsysteminstance的寫法會有不同。
由於我對mysql並不熟悉,所以在寫entity的method的時候,又遇到不少問題。其中之一是sql語句的parameter的問題。對於ms sqlserver,我們可以使用類似「@parametername」的格式來定義sql語句中的引數。但是,這對於mysql並不一定有效。使用不同的database driver去連線mysql,對於引數,都有不同的定義方法。我搜尋了一下myodbc的文件,發現它不支援命名引數,而直接使用「?」來代表引數,然後按照順序來新增引數的值。
所以,在寫entity method的sql查詢語句時,如果其中有引數,就只能寫成類似:
select customerid, customername, contactname from customers where customerid = ?
但是entity中parameter的定義,仍然可以按與命名引數一模一樣的寫法即可。
使用BDC連線MySql可能遇到的問題
這兩天幫乙個朋友除錯使用bdc business data catalog 來連線mysql中的資料,發現不少需要特別注意的地方。在使用bdc連線時,mysql和ms sql server的區別還是很大的。我的朋友在伺服器上是使用的myodbc這個driver。對於lobsysteminstance...
mysql連線的使用 mysql連線的使用
表一 myclass myclass 用作左表 表二 me me 用作右表 使用 mysql 的 join 在兩個或多個表中查詢資料 你可以在 select,update 和 delete 語句中使用 mysql 的 join 來聯合多表查詢。join 按照功能大致分為如下三類 inner join...
JDBC連線mysql資料庫查詢資料時遇到的bug
記錄一下今天jdbc連線資料庫查詢資料時遇到的問題 查詢的核心 如下 list users newarraylist user user1 newuser while rs.next return users 然後控制台是沒有報錯的,但是我得到的結果卻是有問題的,結果如下 這顯然是有問題的啊,於是我...