c#程式中使用"like“查詢access資料庫查詢為空白的問題,

來源:互聯網
上載者:User

c#程式中使用"like“查詢access資料庫查詢為空白的問題,

今天,在開發的過程中發現了一個特別奇怪的問題:access中like查詢時候,在Access資料庫中執行,發現可以查詢出結果,這是在資料庫上執行,select * from KPProj where KpName like '*測試*',但是同樣的語句在c#程式中卻查詢為空白,這是什麼情況呢?

這個問題真讓人糾結,通過以前的開發經驗,access中like需要用*號,但是sqlserver oracle資料庫中要用標準的%,為什麼此時就不行呢?經過搜尋資料,最後發現是串連access驅動程式的問題,以前用的都是mdb,資料庫是accdb,然後使win7 64位開發系統,由於我的程式中連Access用的是oledb驅動程式,所以在這裡 不能用“*”,必須用“%”。如果用的是DAO訪問Access資料庫,則必須用“*”。

      發現並不是遇到access就用*,所以要根據實際的驅動來確定;
C語言中 ^怎使用

a1 = 0x01; //0000 0001
a2 = 0x00; //0000 0000
a3 = 0x03; //0000 0011
a4 = 0x02; //0000 0010

b1 = a1 ^ a2; //0000 0001
b2 = a1 ^ a3; //0000 0010
b3 = a1 ^ a4; //0000 0011

^異或運算子,位值相同為0,不同為1,見上樣本.

//
簡單實際問題舉例:
======\=======\=======
======a=======b=======
上面是2條電路,2個開關分別為a和b,開啟狀態:\[1],關閉狀態:/[0].
若同時開啟或者關閉,兩條電路均不通.
若a開啟[1],b關閉[0],電路1通電
======\=======/=======
若a關閉[0],b開啟[1],電路2通電
======/=======\=======
綜上,電路在a,b狀態相同時不通[0],在a,b不同時通電[1].
 
c語言中符號<<是什

左移運算子(<<)

將一個運算對象的各二進位位全部左移若干位(左邊的二進位位丟棄,右邊補0)。

例:a = a << 2 將a的二進位位左移2位,右補0,

左移1位後a = a * 2;

若左移時捨棄的高位不包含1,則每左移一位,相當於該數乘以2。
右移運算子(>>)

將一個數的各二進位位全部右移若干位,正數左補0,負數左補1,右邊丟棄。

運算元每右移一位,相當於該數除以2。

例如:a = a >> 2 將a的二進位位右移2位,

左補0 or 補1 得看被移數是正還是負。
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.