首页 技术教程 实用代码 注册破解 正则表达式 网址导航 电子书籍

Mysql存储过程参数中乱码的解决办法

1、我使用insert语句没问题,能够正常插入汉字。 2、把insert语句移到Procedure中后,就无法插入汉字了。在客户端软件中插入的汉字总是为乱码,英文和数字没问题。 3、如果在jdbc中调用这个Procedure总是报错: 在mysql 5.0下错误为:Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'v_title' at row 1,这个提示完全是错误的。 在mysql 5.2下错误为:Cause: java.sql.SQLException: Incorrect string value: 'xBAxBAxD7xD6xB0xA1' for column 'v_title' at row 1 这个提示还马马虎虎象样。 存贮过程内容如下: DELIMITER $$ DROP PROCED...
类别:数据库 - MySQL    查看:138    更新:2014-05-19

Replace替换mysql某字段中的特定字符

replace函数直接替换mysql数据库中某字段中的特定字符 都是当遇到的时候才,知道有这个功能,简单吧!很省事的、处于工作上的需要,自己写函数太麻烦咯!baidu gg出来还是的东西,其实差手册也有,只是脑子没概念不好查^_^     UPDATE `table_name` SET `field_name` = replace (`field_name`,'from_str','to_str') WHERE `field_name` LIKE '%from_str%' 说明: table_name —— 表的名字 field_name —— 字段名 from_str —— 需要替换的字符串 to_str —— 替换成的字符串...
类别:数据库 - MySQL    查看:101    更新:2014-05-19

MySQL的InnoDB和MyISAM数据引擎的差别

InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。 MyIASM是IASM表的新版本,有如下扩展: 二进制层次的可移植性。 NULL列索引。 对变长行比ISAM表有更少的碎片。 支持大文件。 更好的索引压缩。 更好的键吗统计分布。 更好和更快的auto_increment处理。 以下是一些细节和具体实现的差别: 1.InnoDB不支持FULLTEXT类型的索引。 ...
类别:数据库 - MySQL    查看:99    更新:2014-05-19

MySQL数据库之UPDATE更新语句精解

一、INSERT和REPLACE INSERT和REPLACE语句的功能都是向表中插入新的数据。这两条语句的语法类似。它们的主要区别是如何处理重复的数据。 1. INSERT的一般用法 MySQL中的INSERT语句和标准的INSERT不太一样,在标准的SQL语句中,一次插入一条记录的INSERT语句只有一种形式。 INSERT INTO tablename(列名…) VALUES(列值); 而在MySQL中还有另外一种形式。 INSERT INTO tablename SET column_name1 = value1, column_name2 = value2,…; 第一种方法将列名和列值分开了,在使用时,列名必须和列值的数一致。如下面的语...
类别:数据库 - MySQL    查看:102    更新:2014-05-19

Mysql数据库字符集转换

最近discuz发布了新的版本,免费了,用的人更多了,以前使用其它论坛程序和discuz2.5/3.0的纷纷转换或升级到discuz4.0,可见discuz作为中国人开发的php论坛程序,确实是非常优秀的,在大家欣喜若狂的时候,也遇到了一些问题 看到不少用户反映转换完以后是乱码的情况,出现这种现象的主要原因是这类用户使用的都是mysql4.1以上的版本.下面作一个说明,希望出现这个问题的朋友都能耐心的把这个文档看完!!! MySQL 4.1开始,对多语言的支持有了很大变化 (这导致了问题的出现)。尽管大部分的地方 (包括个人使用和主机提供商),MySQL 3、4.0 仍然占主导地位;但 MySQL 4.1 乃至5.0是 MySQL 官方推荐的数据库,已经有主机提供商开始...
类别:数据库 - MySQL    查看:115    更新:2014-05-19

mysql中Table is read only的解决

一个Discuz论坛,原来架在windows下,用的是GBK编码,MYSQL版本是5.0的。 现在需要转移到Linux下,我本来建议用mysqldump导出的方法,但同事希望直接用data目录下的数据库目录。 那就先用移目录的方式试下,在新服务器创建数据库,然后将旧的目录移过来。 在mysql中,Select之类的都正常,但在网页程序中提示:Table 'cdb_posts' is read only 给数据库目录的所属用户和组改为mysql,并加上777的权限,还是一样提示。 程序中使用root连接,也是一样的提示。 想用myisamchk来检查一下,也提示read only。 最终在这里找到了解决方法:http://www.mysqltalk.org/re-the-table-is-read-only-vt154092.html 以下为引...
类别:数据库 - MySQL    查看:117    更新:2014-05-19

基于MySQL数据库的UTF8中文网站全文检索的实现

现在的互联网上,很多网站都提供了全文搜索功能,浏览者可以通过输入关键字或者是短语来搜索特定的资料。在PHP+MySQL构架的网站中,通常的做法是通过SELECT查询的Like语句来进行搜索,这一办法存在搜索不够精确、以及效率非常低下的缺点。比如对一个有十几万条记录数据表的TEXT字段进行LIKE操作,可能会花费上近10秒钟左右,这对网站的浏览者来说是一个非常糟糕的使用体验。如何在海量的数据中能够快速的进行全文检索呢?MySQL提供了一个全文索引功能,也就是把字段设置上FULLTEXT索引属性,然后通过SELECT的MATCH AGAINST语句进行查找。 我们开发的一个纯英文站点TouchUs - The Globa...
类别:数据库 - MySQL    查看:115    更新:2014-05-19

解决Lost connection to MySQL server at 'reading initial communication packet'的方法

当通过 TCP/IP 连接 MySQL 远程主机时,出现 ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 104 。 如果是在linux shell命令行中直接打 mysql 命令,能够顺利连上 MySQL,执行查询语句也比较正常,但如果执行 STOP SLAVE; 命令时就随机出现 ERROR 2013 (HY000): Lost connection to MySQL server during query 问题。而如果把操作命令写到脚本文件再去执行该脚本文件的话,则必然出现 Lost connection to MySQL server at 'reading initial communication packet', system error: 111 要是无论通过什么途径远程访...
类别:数据库 - MySQL    查看:140    更新:2014-05-19

mysql全文搜索问题

今天在写这个网站的全文搜索的时候遇到了一些问题,开始的时候我是这样写的SELECT * FROM `article` WHERE ti like '%a%' or con like '%a%' 这样是可以的,后来一个哥们告诉我这样多个like的话会出对服务器和数据库的压力比较大的,建议我用全文搜索吧。找了半天,找到这个文章,还不错的吧。 对于全站搜索,或者是一些大容量的搜索很有用的。ok,认真看吧。 到 3.23.23 时,mysql 开始支持全文索引和搜索。全文索引在 mysql 中是一个 fulltext 类型索引。fulltext 索引用于 myisam 表,可以在 create table 时或之后使用 alter table 或 create index 在 char、varchar 或 text 列上创建。对于大的数据库,将数据装载到一个没有...
类别:数据库 - MySQL    查看:118    更新:2014-05-19

基于mysql的bbs设计(五)

6。bbsd和cq66服务器端改造 bbsd中,关于用户的模块应该比较好改,只要将写.PASSWD文件的操作换为操作数据库的UserManage类的成员函数即可,但可能要先判断什么数据更改,要调用哪个函数。并发操作的一致性,则由数据库的加锁功能保证,mysql应该支持这种的锁吧。文章方面可能比较麻烦,也是将原来对文件的操作转换成操作数据库的BoardManage类的成员函数即可。 cq66模式应该比较好改动,可能就是原来取文章的协议要变化一下。取文章标题的时候,同时也将文章的长度发送过去,然后客户端可以根据显示区的大小,逐步请求文章的内容,请求文章的时候要给出请求的范围。 关于系统模块层,可能做成so的形式会不会较好,(so是不是相当于dll...
类别:数据库 - MySQL    查看:79    更新:2014-05-19

基于mysql的bbs设计(四)

5。版面模块设计 所谓分类,更多的是为telnet服务端考虑的,在cq66模式下,用户可以按照自己的意愿进行分类,反正最后都是直接以版为基本单位访问的。 对于版面文章的访问,存放的时候以整篇文章为参数,文章的分块由本层完成,如果上层以块为单位传送,则在上层全部传完,组合后,再传参到本层分解;在读取 的时候,本层则以块为单位访问,如果上层要以全文为单位访问,则在上层做合并 工作,本层不管。 至于要不要独立出索引,不影响上层的操作,主要和下层的数据库构造有关, 主要考虑可行性,效率需求等。 权限的检查放在哪里进行呢?还是放在上层吧,其实就telnet服务器端,和cq66 的客户端,根本不会给一般用户显示特殊指令的菜单,当然,用...
类别:数据库 - MySQL    查看:79    更新:2014-05-19

基于mysql的bbs设计(三)

4。用户模块设计 对于底层数据库,调用mysql的C API函数来进行数据库的修改,内部保存一定的状态变量(例如用户名,还是留给上一层完成?),对上一层,则提供用户管理的接口。 Class UserManage { private: char myuserid[20]; // 用户的id,未登陆前为空 time logintime; // 用户登陆时间,并用于计算停留时间 char loginhost[20]; //上站地点。 public: int NewUser( char *userid, char *passwd ); 新建一个用户,判断是否已经有,其他资料暂时为空, firstlogintime,权限等设缺省值。 int UserLogin( char *userid, char *passwd ); 用户登陆,验证密码, int ChangePasswd( char *oldpasswd, char *newpasswd ); 修改密码,要...
类别:数据库 - MySQL    查看:95    更新:2014-05-19

基于mysql的bbs设计(二)

3。数据库设计 关键还是mysql的效率问题,合理分配mysql的内存,特别是table cache的大小。另外,当系统突然掉电呢?mysql是否robust? table的名字设计,采用一位前缀表明类型,全部用小写表示(?),例如: 系统的数据库,以s为前导,如用户表:suser(sUSER 呢?),具体如下: s :系统表,suser,sclass m :用户信件表,msysop,mdrangon w :用户消息表,wsysop,wdrangon a :版面索引表,alinux,acampus b :版面文章表,blinux,bcampus c :特殊分类版面表,cnewboard i :精华区索引表,ilinux,ilinux01,icampus,icampus04 j :精华区文章表,jlinux,jcampus, 另外,是使用字串还是数字作为标识呢?例如,一个叫sysop的帐...
类别:数据库 - MySQL    查看:84    更新:2014-05-19

基于mysql的bbs设计(一)

1。系统架构: 采用模块化思想,分为3层: a。数据存储层:使用mysql来存放bbs的所有数据,包括用户信息,文章数据,用户信件,用户消息,系统数据(?),关键问题:数据库的规划,是否用文件来辅助。 b。系统功能层:完成bbs的基本功能,由多个并列模块组成,向下调用mysql的函数访问数据库,向上,接受处理请求,将处理的结果返回上层,根据请求类型,返回成败结果和其他数据。而且模块高度灵活,可以方便的修改增加。包括: ** 用户模块,处理用户的注册,基本数据的修改,权限的变化, 网友信息的查询。 ** 版面模块,完成文章发表,文章的读取,文章的删除,文章的加标记,读改删权限检查,此模块对数据库的要求最高。 ** 精华区模块,包括...
类别:数据库 - MySQL    查看:79    更新:2014-05-19

让MySQL真正支持中文的全文检索(全文索引)

PHP 和 MySQL 几乎也是离不开的, 后面我附一个简单的例子来说明在 PHP 中使用全文检索.... 下载及完全说明正式地址: http://myft.twomice.net 在不影响 MySQL 的系统结构及其他功能的前提下,解决了 MySQL 目前对中文全文检索无法正确支持的缺陷并优化 MySQL 对中文检索处理的性能。(目前本软件包支持根据词典进行简易的正向最大匹配分词、支持包括UTF-8、GBK、BIG5 ... 在内的字符集) 经测试效果尚可, 140万行约 1.4G 数据(不含索引区空间) 检索大概都在 0.0x ~ 0.x 秒之间. 搭配...
类别:数据库 - MySQL    查看:106    更新:2014-05-19

Mysql5存储过程教程

Introduction 简介MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的。简单的来说是介绍了“存储过程、触发器、视图、信息架构视图”,我打算每天一部分,来连载这个教程.如果你想看一次看完PDF版本的教程,请到down.phpv.net下载.在此感谢译者陈朋奕的努力. 希望这本书能像内行专家那样与您进行对话,用简单的问题、例子让你学到需要的知识。为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着课程去学,相信很快就能掌握。 Conventions and Styles 约定和编程风格每次我想要演示实际代码时,我会对mysql客户端的...
类别:数据库 - MySQL    查看:110    更新:2014-05-19