MySQL与SQL比较有那些区别呢
MySQL是一个逐渐完善的过程,使用前期版本时会遇到一些问题,通常搞得莫名其妙,在版本选择上尽量选择最新的。
1.在5.03以前版本中,存储varchar型数据时,后面的空格会被忽视掉,前面的空格会保留,在5.03版本中修正了这个问题。
2.在某些情况下,定义表或更改其结构时,将CHAR列转换为VARCHAR列。(在MySQL 5.0.3中更正),这个bug比较神奇,暂时没有遇到过,不知道这个“某些情况”指的是什么。
3. 删除表时,不自动取消关于表的权限。必须明确发出REVOKE语句,以撤销针对表的权限。还有觉着MySQL修改权限
以后还需要Flush一下,否则即使重新mysql -u xxx -p 进入也不成,比较困惑。
4.CAST()函数不支持对REAL或BIGINT的抛弃。编程语言中,例如Java中提供了不同格类型数据之间的相互转化,
Long.parseLong(),Float.parseFloat(),Double.parseDouble()……,这里少了2个感觉总是不爽;
5.标准SQL要求,SELECT语句中的HAVING子句能够引用GROUP BY子句中的列。在MySQL 5.0.2之前,不能完成该功能。在4.x的时候,都没有用过很复杂的SQL语句,-都快养成习惯了
6. MySQL服务器能够理解“||”和“&&”操作符,将其当作逻辑OR和AND,就像在C编程语言中那样。在MySQL服务器中,||和OR是同义词,&&和AND也是同义词。由于采用了该优异的语法体系,MySQL服务器不支持SQL针对字符串连接的“||”操作符,而采用了CONCAT()取而代之。由于CONCAT()能够接受任意数目的参量,很容易将使用“||”操作符的情况转换为MySQL服务器
支持的类型。--这个就好玩了,与写程序很贴近,嗯,用惯了再用别的数据库就需要注意了!!
7.另一个可能就是这个了,在MySQL中“%”操作符等同于MOD()。也就是说“N % M”等同于MOD(N,M)。Cyuyan的程序员支持“%”,而且它也是为了兼容PostgreSQL而使用的,其他的数据库则不一定支持了!!
8.允许在数值列上使用LIKE,例如可以对一个数据列使用select * from table_name where int_column like 26;
还有不少MySQL对SQL的扩展,方便了使用,不过还是建议尽量使用标准的SQL语句,在以后换数据库的时候会省却很多的麻烦,起码这些SQL语句不用重写了,^_^
MySQL短小精悍,可以在自己机子上部署,对调程序基本感觉不到影响。如果使用Linux(Redhat系列)里面就带有了MySQL了(当然在安装的时候得勾上),相当的方便。
MySQL与SQL比较有那些区别呢的更多相关文章
- Oracle、Mysql、Sql Server语句的区别
1.空值的处理——判断是否为空,为空时取一个值,不为空时取另一个值 1).Sql Server 中 ISNULL(check_expression,replacement_value) 解释:如果ch ...
- 数据库中聚合索引(MySQL和SQL Server区别)
一.聚集索引和非聚集索引 聚集索引:类似字典的拼音目录.表中的数据按照聚集索引的规则来存储的.就像新华字典.整本字典是按照A-Z的顺序来排列.这也是一个表只能有一个聚集索引的原因.因为这个特点,具体索 ...
- MySql和Sql的单行注释和多行注释的区别
这里,请允许我把mysqlserver和sqlserver注释一起说明 1.单行注释 1)mysql中,可以用“-- ”和“ --”来注释 -- 方式1:单行注释 -- create database ...
- MYSQL和SQL Server 的区别
注意MYSQL使用注释 -- 时 要后面加上空格 使用 #不用 一.数据类型 MYSQL:支持enum和set类型 ;SQL SERVER:不支持 MYSQL:不支持nchar,nvarchar,nt ...
- Oracle、MySql、Sql Server比对
1. 价格 MySql:廉价(部分免费):当前,MySQL採用双重授权(DualLicensed),他们是GPL和MySQLAB制定的商业许可协议.假设你在一个遵循GPL的自由(开源)项目中使用 ...
- sql点滴41—mysql常见sql语法
原文:sql点滴41-mysql常见sql语法 ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename ...
- 第三章(附)mysql表类型MyISAM和InnoDB区别(决定了是否支持事务)
mysql表类型MyISAM和InnoDB区别 MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问 ...
- 数据库 --> SQL 和 NoSQL 的区别
SQL 和 NoSQL 的区别 一.概念 SQL (Structured Query Language) 数据库,指关系型数据库.主要代表:SQL Server,Oracle,MySQL(开源), ...
- mysql索引sql优化方法、步骤和经验
MySQL索引原理及慢查询优化 http://blog.jobbole.com/86594/ 细说mysql索引 https://www.cnblogs.com/chenshishuo/p/50300 ...
随机推荐
- Java 继承 执行顺序
代码: package com.company; public class Main { public static void main(String[] args) { new MyClass(); ...
- 注册页面的简单搭建(H5)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 线性空间光照(即Gamma)
在渲染管线中正确使用Gamma校正是决定渲染效果的一个非常重要的因素,现在商业引擎包括很多国内引擎都已经是在线性空间计算光照.当然也包括我们之前公司设计的引擎.关于gamma校正的定义可以查看wiki ...
- fail2ban使用
转子: http://www.2cto.com/Article/201406/310910.html 1.fail2ban简介: fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹 ...
- Summary: Merge Sort of Array && 求逆序对
常用算法(后面有inplace版本): package ArrayMergeSort; import java.util.Arrays; public class Solution { public ...
- Leetcode: Alien Dictionary && Summary: Topological Sort
There is a new alien language which uses the latin alphabet. However, the order among letters are un ...
- Leetcode: Majority Element II
Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorit ...
- JAVA-封装-静态属性
1.使用 1.static 2.用来修饰属性.方法.内部类.代码块 3.称为类属性,静态属性,类方法,静态方法 3.不需要实例化,直接用类名或静态成员名调用 2.特点 1.静态属性对于类的所有实例是共 ...
- git的基本使用
1.在本地新建一个文件夹来存放代码 2.用命令行进入这个文件夹 3.git init --来创建一个代码仓库 3. 配置用户信息:用户名和 邮箱(联系作者本人沟通, 责任到人) git config ...
- 活动组件(三):Intent
大多数的安卓应用都不止一个Activity,而是有多个Activity.但是点击应用图标的时候,只会进入应用的主活动. 因此,前面我已经建立了一个主活动了,名字是myActivity,现在我再建立一个 ...