视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MySQL数据库出现N多问题的原因
2020-11-09 14:04:56 责编:小采
文档


以下的文章介绍的是用MySQL数据库出现N多问题,我们大家都知道系统用 access数据库,没有任何的问题出现,但是随着数据量不断的增加,其相关性能下降的很快,但是最起码,没有错。 后台考虑到未来发展,转移到MySQL数据库平台,结果一下子就出现了一堆问题。

以下的文章介绍的是用MySQL数据库出现N多问题,我们大家都知道系统用 access数据库,没有任何的问题出现,但是随着数据量不断的增加,其相关性能下降的很快,但是最起码,没有错。

后台考虑到未来发展,转移到MySQL数据库平台,结果一下子就出现了一堆问题。

1. 中文字符不支持。

这个就够我忙几个小时了,又是修改my.ini,又是修改链接字符串。总算搞好了。

2. 插入时间格式不支持

简直吐血了。在c#里,日期含有中文“上午”“下午”,由于MySQL修改支持了中文,插入的时候直接报错了。

这种低级的问题超级吐血,只好在持久层自己添加一个转换。

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

测试的时候,突然发现插入的中文没了一般,英文正常,字段类型是Text。再次吐血,找不到方法之后,最后只好重建MySQL数据库。

4. 插入BLOb,图片错误。

如果是字符转化为byte[],没有问题,如果是文件之类的就错。估计还是中文字符问题。

只能再次修改持久层,对byte[]进行base加密。

吐血中!!!!!

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数据库相当多问题的介绍,望你能有所收获。

下载本文
显示全文
专题