首页 > 数据库 >MySql与SQLServer数据库基础语法差异;

MySql与SQLServer数据库基础语法差异;

时间:2023-11-10 18:23:22浏览次数:50  
标签:存储 数据库 SQLServer 语法 参数 MySql NULL 过程

1. 应用Native 工具将数据同步,将数据库结构和同步到MySql。视图、存储过程、函数手动创建。
2. 移除数据所有数据查询的数据框架标识"dbo";
3. MySQL中IFNULL用法,用法与SQLServer中ISNULL(expr1,expr2)用法相似.,而MySql中isnull()的返回值为1,否则返回值为0;
4. sql server的识别符号是[],而mysql的识别符号是`
5. MySql字符串拼接用CONCAT(str1,str2)函数,其实在SqlServer中也存在CONCat函数,效果一致;
6. 创建视图不能包含子查询,GO非MySql关键字
7. 对象名称不能包含中括号(表名,视图名,存储过程名称)
8. SqlServer 查询Top 10,在My Sql 中维护限定 LIMIT 10
9. sql server支持用getdate()的方法获取当前时间日期,但是mysql获取当前日期方法是通过cur_date(),获取当前完整时间则是要通过now()函数。
10. MySql中在查询时,如果同时用星号【*】和指定字段名,指定字段名只能放在星号之后,
11. 在Mysql中虽然数据类型定义了Int类型,但是在字符串转Int类型是,只能应用CAST(str1 as SIGNED);
12. MySql和Sqlserver都定义了Convert函数,但是语法结构不同,Sql Server 中类型转换CONVERT(type, str1),而在MySql中则为CONVERT(str1,type);另外mysql 定义了特殊的函数将字符串转换为时间类型 str_to_date(str, format),也可以使用Cast或者Convert(时间类型转换参考: MySQL中将字符串转为datetime类型_mysql 字符串转datetime_小白学数分的博客-CSDN博客)
13. 关于 NULL 的条件比较运算是比较特殊的。你不能使用 = NULL 或 != NULL 在列中查找 NULL 值 。在 MySQL 中,NULL 值与任何其它值的比较(即使是 NULL)永远返回 NULL,即 NULL = NULL 返回 NULL 。MySQL 中处理 NULL 使用 IS NULL 和 IS NOT NULL 运算符。<=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 NULL 时返回 true
14. INSERT IGNORE INTO 与 INSERT INTO 的区别就是 INSERT IGNORE INTO 会忽略数据库中已经存在的数据,如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据(建议不使用)。
15. 存储过程:
  a. MySql函数必须有返回值,存储过程没有;
  b. 存储过程的参数可以使用IN、OUT、INOUT类型,而函数的参数只能是IN类型;
  c. 存储过程参数不需要@符号,在存储过程方法体内部,如果使用@符号申请参数,表明参数为全局参数;
  d. 在参数和方法体之前不需要AS关键字;
  e. MySQL 存储过程名字后面的“()”是必须的,即使没有一个参数,也需要“()”;
  f. 存储过程的参数不能指定默认值。
  g. 存储过程的参数不能指定默认值。
  h. 批处理工程中IF条件判断时,语法为IF {contdition} then {body } end if。en if 已分好结尾,若body同时有多行语句,则需要使用begin {body} end。
  i. 通常在创建存储过程之前,会通过delimiter $$命令将语句的结束符,从";"改成其他符号,这里使用的是"$$",这样在存储过程中的";"就不会被mysql解释成语句的结束而提示错误
  j. 删除存储过程的语法:drop {procedure | function} [if exists] sp_name
  k. 查看存储过程或函数的状态: show {procedure | function} status [like 'pattern']
  l. 调用存储过程时,需要在过程名字后面加上(),即使没有参数.语法:call pr_no_param();

16. 从Mysql8.0开始增加with as的语法,功能和Sql Server一致,若要实现递归调用,则需要在with 后增加关键字 RECURSIVE
17. mysql的递增语句是AUTO_INCREMENT,而sql server的递增语句是identity
18. 创建临时表时,一种语法和普通创建表是一样的,在 Create之后增减关键字TEMPORARY, 语法:CREATE TEMPORARY TABLE ;另一种语法 CREATE TEMPORARY TABLE { temp_tablename } SELECT F_Id from { tablename}
MySql 不支持 select into from 语法;

 

标签:存储,数据库,SQLServer,语法,参数,MySql,NULL,过程
From: https://www.cnblogs.com/XieDong/p/17824770.html

相关文章

  • 【mysql 1045错误】
    【mysql1045错误】1.请确认检查账户密码均正确!2.ip地址没有访问这个库的权限解决办法:进行授权1)mysql8以下的添加方式#创建用户|在root@'%'增加一个任意地址可以访问的用户root|identifiedby'密码';1grantallprivilegeson*.*toroot@'%'identifiedby'your......
  • django中数据库外键可以自定义名称吗
    是的,在Django中,你可以自定义数据库外键的名称。在定义模型时,可以使用`db_constraint`参数来设置外键的约束名称。默认情况下,Django会自动生成外键约束的名称,但你可以通过设置`db_constraint`参数为`False`来禁用自动生成的约束,并且在需要时手动为外键指定名称。以下是一个简单的例......
  • Mysql8.0 导出文件导入到 5.7
    1:创建的数据库要和导出文件编码一致,如下图 2:查看是否有其他编码如下图: 3:Invaliddefaultvaluefor'LOCK_TIME_' 报错更改mysql的my.ini 文件 设置explicit_defaults_for_timestamp=ON  重启mysqlC:\ProgramData\MySQL\MySQLServer5.7......
  • 懒羊羊大王——数据库设计心得
    一、简介 项目背景:中国传统文化博大精深,中国历史经历多个朝代,各种官职复杂多样,同一官职在不同朝代也可能有不同的职责,这对于想要了解官职历史的人来说有很大的难度,即使是查找纸质书籍也不一定能得到有效的信息。为了解决这一问题,我们决定建立一个知识图谱整理系统网站,将中国古代......
  • 字符集collation不同-隐式转换mysql
    适用范围1.适用于MySQL或者OceanbaseforMySQL2.适用于两表或多表join的字段字符序不同的场景。如本例:COLLATEutf8mb4_general_ci和COLLATEutf8mb4_bin`cust_no`varchar(30)CHARACTERSETutf8mb4COLLATEutf8mb4_general_ci`cust_no`varchar(100)CHARACTERSETu......
  • 解决MySQL8报错:Public Key Retrieval is not allowed
    问题分析:这个是由于配置的URL中的useSSL为false导致的,当其为false后,mysql将会检查allowPublicKeyRetrieval是不是TRUE,由于开启allowPublicKeyRetrieval不安全可能遭到中间人攻击(英语:Man-in-the-middleattack,缩写:MITM),所以allowPublicKeyRetrieval的值默认为false。两项都为false后......
  • MySQL数据库进阶实战:优化性能、提高安全性和实现高可用性
    当涉及到MySQL数据库的进阶实战时,有许多方面需要考虑,包括性能优化、安全性、高可用性和复杂查询等。以下是一个关于MySQL数据库进阶实战的文章大纲,您可以根据需要进行扩展和详细说明。MySQL数据库进阶实战:优化性能、提高安全性和实现高可用性引言MySQL是一款广泛使用的开源关系型数......
  • AAA软件批发-数据库设计心得
    数据库设计心得工具选择进行数据库设计的时候,选择好一个合适的设计工具非常重要。一个好的设计开发工具可以大大提高效率。powerdesigner就是一个很好的选择,它能支持快速创建表,并支持表与表之间建立关系,使得数据模型设计变得简单高效。同时,能够实现概念模型与物理模型之间的自动......
  • 岳麓山风景名胜管理大队-数据库设计心得博客
    数据库设计心得-软件2103-岳麓山风景名胜管理大队作者:王明扬项目名称:数字化农业信息管理系统组名:岳麓山风景名胜管理大队组员:刘传煜、伍嘉懿、王明扬、秦凯、符南山、金颖希指导老师:荣辉桂目录:一、背景二、数据库设计的重要性三、设计过程四、设计心得一、背景数字......
  • 团队项目数据库设计心得
    1.分析业务需求我们的团队项目是图数据库的可视化管理系统,作为一个数据库,提供关于用户对数据库的各种操作,包括增删查改备份还原等,当然作为一个系统,需要注册登录等功能,还得提供管理用户的管理系统。以及各种其他的拓展功能。2.实体分析想要设计数据库,首先要知道需要什么实体。......