程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL數據庫出現N多問題的原因

MySQL數據庫出現N多問題的原因

編輯:MySQL綜合教程

以下的文章介紹的是用MySQL數據庫出現N多問題,我們大家都知道系統用 access數據庫,沒有任何的問題出現,但是隨著數據量不斷的增加,其相關性能下降的很快,但是最起碼,沒有錯。

後台考慮到未來發展,轉移到MySQL數據庫平台,結果一下子就出現了一堆問題。

1. 中文字符不支持。

這個就夠我忙幾個小時了,又是修改my.ini,又是修改鏈接字符串。總算搞好了。

2. 插入時間格式不支持

簡直吐血了。在c#裡,日期含有中文“上午”“下午”,由於MySQL修改支持了中文,插入的時候直接報錯了。

這種低級的問題超級吐血,只好在持久層自己添加一個轉換。

3. 插入的中文突然丟失了一般

測試的時候,突然發現插入的中文沒了一般,英文正常,字段類型是Text。再次吐血,找不到方法之後,最後只好重建MySQL數據庫。

4. 插入BLOb,圖片錯誤。

如果是字符轉化為byte[],沒有問題,如果是文件之類的就錯。估計還是中文字符問題。

只能再次修改持久層,對byte[]進行base64加密。

吐血中!!!!!

5. 這次竟然是官方代碼拋的異常!!!!我靠!!!老大,這個是誰寫的啊!

TABLENAME:POS_SALESORDER

LOG:System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。

參數名: length

在 System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)

在 MySQL.Data.Types.MySQLString.MySQL.Data.Types.IMySQLValue.WriteValue(MySQLStream stream, Boolean binary, Object val, Int32 length)

在 MySQL.Data.MySQLClient.MySQLParameter.Serialize(MySQLStream stream, Boolean binary)

在 MySQL.Data.MySQLClient.Statement.SerializeParameter(MySQLParameterCollection parameters, MySQLStream stream, String parmName)

在 MySQL.Data.MySQLClient.Statement.BindParameters()

在 MySQL.Data.MySQLClient.PreparableStatement.Execute()

在 MySQL.Data.MySQLClient.MySQLCommand.ExecuteReader(CommandBehavior behavior)

在 MySQL.Data.MySQLClient.MySQLCommand.ExecuteNonQuery()

在 Pixysoft.Framework.Noebe.NoebeCommand.Execute()

救命啊。。什麼原因!!!這次連debug都沒有辦法了。

我估計還有無數的問題在等著我。

開源啊開源,不是我刻意說你。也擺脫你爭氣點。我做軟件也5年多,用.net從來不會被小問題阻礙,可以專心研究算法、框架。可是一搞java,一搞開源的,就無數的小問題。

比如hibernate, tmd,竟然版本升級了,連namespace都變了。 這可以說,直接使網上數以百萬計的hibernate demo code, helloworld變成費碼。對於初學者,這是多麼沉重的打擊。

比如eclipse, 無數的擁護者肯定唾罵我。但是,和vs2005比起來,我寧願面對無數的唾罵,也要支持vs2005。eclipse是有些不錯的功能,但是那個性能。。那個易用性。。。嗨。。一啟動就300m內存。用個智能提示等半天假死。還有很多打包、部署、一大堆問題。不是說ant不好,可是我只是想打個包,讓我寫一堆xml干嘛,而且寫的跟寫代碼一樣,還分拆在不同的目錄。救命。。。比看代碼還累。

後來出了個所謂的maven的,說專門針對部署的,怎麼怎麼好。我們用起來,簡直一個狗屁。只要任意一個版本變動,立刻病毒效應。立刻打包失敗,而且失敗的莫名其妙。我們的工程師也就1、2個人才能解決,比如修改打包配置文件版本號最後2位之類的,其他的都雲裡霧裡。

還有java裡面做界面的,不要跟我說javaswing怎麼樣,最後還不是IBM推出的基於c的SWT,才結束了JAVA的界面噩夢。以上的相關內容就是對用MySQL數據庫相當多問題的介紹,望你能有所收獲。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved