
MySql
wuxieprobe
这个作者很懒,什么都没留下…
展开
-
对于mysql数据库引擎myISAM不支持事务的了解
今天做程序时发现mysql的数据库引擎myISAM不支持事务。如果硬要用事务的话,myISAM是根本做不到的。唯一的办法是将myISAM引擎换成Innodb。只有这样才能实现事务。原创 2011-11-15 10:39:38 · 4343 阅读 · 0 评论 -
MySql Cast与Convert函数
CAST() 和CONVERT() 函数可用来获取一个类型的值,并产生另一个类型的值。 CAST(xxx AS 类型) , CONVERT(xxx,类型)这个类型 可以是以下值其中的 一个: 二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 : DATE 时间: TIME转载 2012-03-06 14:32:38 · 1886 阅读 · 0 评论 -
mysql中关于SELECT *,concat(ItemName,ProductID) as ItemName FROM `t_product`的语句最后的ItemName的值的问题解释
很多时候都会碰到合并两个字段来作为一个字段的值的情况,如果我们想既要返回所有字段的值,又要让合并后的字段的值被引用到(显示或者其他操作),即是说让合并后的这个字段去代替原来的一个字段,那么怎么做呢?SELECT *,concat(ItemName,ProductID) as ItemName FROM `t_product`这句话就可以做到的。但是要注意:合并后的重命名的名称必须是和你要覆原创 2012-03-06 10:04:00 · 2298 阅读 · 0 评论 -
存储到数据库中的文章,为什么取出来之后就没有换行、空格了?
在taxtarea中输入的文本。如果含有回车或空格。在界面上显示的时候则不哪么正常。回车消失了,空格变短了。如何解决这个问题呢。有2种方法。1.使用标签 w3c对pre元素是这样定义的:pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。 更详细的内容请参考 http://www.w3school.com.cn/转载 2012-03-16 13:55:24 · 6099 阅读 · 0 评论 -
mysql不区分表名大小写的方法。
默认是要区分表名大小写的让MYSQL不区分表名大小写的方法其实很简单: 1.用ROOT登录,修改/etc/my.cnf 2.在[mysqld]下加入一行:lower_case_table_names=1 3.重新启动数据库即可。原创 2012-05-02 14:44:37 · 1483 阅读 · 0 评论 -
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句 (自我复制语句)
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 I转载 2012-05-07 14:17:40 · 1422 阅读 · 0 评论 -
mysql查询性能优化
第三章讲解了如何优化数据库架构(Schema),它是获得高性能的必要条件。但是只有架构是不够的,还需要很好地设计查询。如果查询设计得不好,那么即使是最好的架构也无法获得高性能。查询优化、索引优化和架构优化三者相辅相成。本章首先讨论设计查询的基本原则,它也是查询性能不佳时最先考虑的因素;然后深入讲解了查询优化和服务器的内部机制,这部分展示了 MySQL 如何执行特定查询,从中也可以知道如何更转载 2012-05-11 18:31:16 · 4369 阅读 · 0 评论 -
看《高性能MySQL》(第二版)中文版后的笔记
1.锁有两种:(1)表级锁。这种消耗资源比较小。相对低级。(2)行级锁。这种消耗资源比较大。相对高级。另外还有一种锁:支持MVCC的行级锁。这种资源消耗最大。一般不怎么使用。而且这个也不是Mysql特有的。很多数据库都有。2.set session transaction isolation level read committed,这个语句是设置隔离级别的。read commit原创 2012-05-04 16:12:30 · 1737 阅读 · 0 评论 -
mysql的limit的优化
不要以为limit很好用,就没有节制的用,想个问题:如果select * from table limit 0,10,和select * from table limit 30,10这两个语句还看不出什么性能差别吧,但是select * from table limit 100000,10 和select * from table limit 0,10呢?不信,就试试吧。下面来详细解决转载 2012-07-17 11:10:07 · 1064 阅读 · 0 评论 -
一些防范sql注入式攻击的比较有见地的代码(PHP)
$_POST = sql_injection($_POST);$_GET = sql_injection($_GET);function sql_injection($content){if (!get_magic_quotes_gpc()) {if (is_array($content)) {foreach ($content as $key=>$value) {$cont原创 2012-08-31 16:39:44 · 1518 阅读 · 0 评论 -
mysql的小知识
SELECT a.*,b.name AS province,c.name AS city ,d.name AS district FROM t_user AS aLEFT JOIN t_district AS b ON a.Fprovince = b.idLEFT JOIN t_district AS c ON a.Fcity = c.idLEFT JOIN t_district AS d原创 2012-11-20 17:33:54 · 756 阅读 · 0 评论 -
UNION和UNION ALL
在数据库中,UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。MySQL中的UNIONUNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录,最常见的是过程表与历史表UNION。如:select * from gc_dfys un原创 2013-08-06 14:16:05 · 930 阅读 · 0 评论 -
ubuntu安装apache2的步骤及发生的问题解决方法
步骤一,安装apache2sudo apt-get install apache2发现问题:Problem with MergeListInstalling package(s) with command apt-get -y --force-yes -f install postfix ..Readi原创 2013-10-10 09:42:35 · 3712 阅读 · 0 评论 -
Mysql存储过程和函数的区别
存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。 www.2cto.com 存储过程和函数存在以下几个区别: 1)一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。存储过程,功能强大,可以执行包括修改表等一系列数据库操转载 2013-09-26 13:27:57 · 1256 阅读 · 0 评论 -
php操作mysql执行数据库查询的一些常用操作罗列
php操作mysql步骤:1.$connect=mysql_connect('localhost','root','123456') or die('数据库连接失 败。'mysql_error());链接mysql。2.mysql_select_db('database',$connect)选择链接的数据库。3.mysql_query('Set names gb2312');原创 2011-12-22 17:16:38 · 1379 阅读 · 0 评论 -
mysql为字段值添加或者去除前缀、后缀
添加前缀update `ecs_goods` set goods_name=concat('新中式',goods_name) where cat_id =4;添加后缀update `ecs_goods` set goods_name=concat(goods_name,'新中式') where cat_id =4; 删除update `ecs_goods`set goods_nam转载 2012-02-27 15:37:08 · 2816 阅读 · 0 评论 -
mysql中替换某个字段中的某一些内容
直接上sql语句:UPDATE`t_send_mail_success` SET `MailContent` = replace(`MailContent` , "","a" ) WHERE `MailContent` LIKE'%%'这里我的这个例子是更改t_send_mail_success表中的MailContent这个字段中有包含这个特原创 2012-02-24 14:59:26 · 1528 阅读 · 0 评论 -
mysql的DISTINCT的关键字有很多你想不到的用处
mysql的DISTINCT的关键字有很多你想不到的用处1.在count 不重复的记录的时候能用到比如SELECT COUNT( DISTINCT id ) FROM tablename;就是计算talbebname表中id不同的记录有多少条2,在需要返回记录不同的id的具体值的时候可以用比如SELECT DISTINCT id FROM tablename;返回talbe转载 2011-11-09 18:03:49 · 895 阅读 · 0 评论 -
用SQLyog导入MySQL文件方法
MySQL文件导入方法推荐使用SQLyog,点这里下载SQLyog5.2.1英文版1、下载到本地,然后安装2、打开SQLyog,如下图:3、点'New..'创建数据库连接,在'Name'输入框内填写个连接名称,如MySQL,然后出现输入帐户密码的对话框,如下图注意:编码那里默认是UTF8,一般情况下推荐使用GB2312(具体使用什么由您导出时的编码决定),如果使用U转载 2011-11-09 18:04:46 · 6616 阅读 · 1 评论 -
mysql去掉重复值的简单方法
mysql去掉重复值的简单方法 对于去掉重复值大家肯定会想到distinct,但是distinct在实际应用中不是很好用,今天www.bhcode.net要讲一下用另类方法来处理重复值:下面先来看看例子: tableid name1 a2 b3 c4 c5 b库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。比如我想用一条语句查询得到n转载 2011-11-09 18:05:54 · 1141 阅读 · 0 评论 -
mysql的limit的用法详细
使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已 经为我们提供了这样一个功能。SELECT* FROMtable LIMIT[offset,] rows| rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数转载 2011-11-10 16:43:10 · 1165 阅读 · 0 评论 -
mysql中UNIX_TIMESTAMP()函数和php中time()函数的区别
mysql 中:UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)若无参数调用,则返回一个Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒数) 作为无符号整数。若用date 来调用UNIX_TIMESTAMP(),它会将参数值以'1970-01-01 00:00:00' GMT后的秒数的形式返回。date 可以是一个DATE转载 2011-11-11 18:04:16 · 1376 阅读 · 0 评论 -
phpmyadmin 没有 innodb引擎
解决方法:第一:把你的my.ini文件复制到 c:/window 下面 (申明: 一般你安装mysql的地方里面的my.ini设置跟 window下面是一样的)第二:设置my.ini 文件 [mysqld] # generic configuration options port = 3306转载 2011-12-13 15:38:05 · 2712 阅读 · 0 评论 -
mysql导入数据时提示 USING BTREE 相关错误解决办法
有时导入mysql会提示如下错误:C:\Users\liqiang>mysql -uroot -paaaaaa guangxiERROR 1064 (42000) at line 486: You have an error in your SQLsyntax; check themanual that corresponds to your MySQL server version转载 2011-12-13 14:09:43 · 891 阅读 · 0 评论 -
PhpMyAdmin安装使用
phpMyAdmin phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的资料库管理工具。 可以管理整个MySQL服务器(需要超级用户),也可以管理单个数据库。为了实现后一种,你将需要合理设置MySQL用户,他只能对允许的数据库进行读/写。那要等到你看过MySQL手册中相关的部分。 安装与配置 1、官方下载站点http://www转载 2011-12-13 14:13:01 · 689 阅读 · 0 评论 -
Apache+MySQL+PHP集成环境汇总
在windows零碎中组建一个PHP支撑环境,通常需求的组件包含:HTTP效劳器、PHP脚本注释引擎、MySQL数据库效劳器、PHP脚本加速引擎、MySQL数据库在线管理工具等。这么多的组件,需求逐个的安拆卸置,对进修PHP的老手来说是一件很艰难的事,对老手来说也很费事。因而不管你是老手还是老手,PHP环境套件包都是一个不错的选择,有了它们,常用组件能够一次性安装,根本无须配置即可使用。好转载 2011-12-13 14:37:07 · 1478 阅读 · 0 评论 -
MyISAM InnoDB 区别
MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快, MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是转载 2011-12-21 09:17:58 · 664 阅读 · 0 评论 -
mysql_fetch_assoc()和mysql_fetch_array()以及mysql_fetch_row()、mysql_fetch_object()的区别
相同点:三个函数都是返回数据库中查询到的一行数据(说的再清楚点就是一条数据)。不同点:mysql_fetch_assoc()用的是数据库中相应的字段名作为的key值(也就是数组下标)如:filed['id']=1;mysql_fetch_row()用的是自动生成的数字(从0开始依次生成)作为的key值(也就是数组下标)如:filed[0]=1;mysql_fetch_array()用的原创 2011-12-22 16:46:59 · 2977 阅读 · 1 评论 -
MySQL表最大能达到多少?
MySQL 3.22限制的表大小为4GB。由于在MySQL 3.23中使用了MyISAM存储引擎,最大表尺寸增加到了65536TB(2567– 1字节)。由于允许的表尺寸更大,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的。InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大转载 2012-01-14 17:48:22 · 7361 阅读 · 0 评论 -
mysql中insert into和replace into以及insert ignore用法区别
mysql中常用的三种插入数据的语句:insert into表示插入数据,数据库会检查主键,如果出现重复会报错;replace into表示插入替换数据,需求表中有PrimaryKey,或者unique索引,如果数据库已经存在数据,则用新数据替换,如果没有数据效果则和insert into一样;insert ignore表示,如果中已经存在相同的记录,则忽略当前新数据;下面通过代码转载 2012-02-21 17:19:10 · 1840 阅读 · 0 评论 -
sql中,将同一个表中两个类型一样的字段的值互换 以及 将同一个表中的一个字段的值复制给另一个字段
将同一个表中两个类型一样的字段的值互换:UPDATE ddd a, ddd bSET a.original_department_id = b.department_id, a.department_id = b.original_department_idWHERE a.key_manage_id = b.key_manage_idAND a.key_manage_id = 1原创 2013-05-29 13:19:28 · 10211 阅读 · 0 评论