SQLServer和MySql语法和关键字的区别
mysql>select DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
-> '22:23:00'
mysql>select DATE_FORMAT('1997-10-04 22:23:00', '%D %y %a %d %m %b %j');
->'4th 97 Sat 04 10 Oct 277'
mysql>select DATE_FORMAT('1997-10-04 22:23:00', '%H %k %I %r %T %S %w');
->'22 22 10 10:23:00 PM 22:23:00 00 6'
(12)MySql存储过程中没有return函数,在MySql中可以用循环和out参数代替
If EXISTS(SELECT * FROM T_Chance WHERE FCustID=CostomerID) return 0
改写为:
(在参数中定义一个out变量:out temp varchar(100);)
BEGIN
Loop1:loop
SELECT count(*) FROM T_Chance WHERE FCustID=CostomerID int @cnt
If @cnt>0 then
begin
set temp=0;
leave loop1;
end;
end if
end loop loop1;
(13) select @a=count(*) from VW_Action 在mySql中修改为:select count(*) from VW_Action into @a;
(14)MySQL中没有top关键字,需要用limit代替且放在后面
注意,在MySQL中的limit不能放在子查询内,limit不同与SQLServer,它可以规定范围 limit a,b——范围a-b
SQL SERVER : select top 8 * from table1
MYSQL: select * from table1 limit 5;
(15)即使存储过程没有参数也要写括号“()”
(16) 当一个存储过程中有创建临时表时
create procedure up_test
()
begin
drop table if exists tb1;
create TEMPORARY table tb1//注意添加TEMPORARY table
(
id int,
name varchar(20)
);//注意最后加分号
insert tb1 values('1','jim');
select * from tb1;
SQLServer和MySql语法和关键字的区别
end
(17)建表中自增长问题:
create table user
(
Id varchar(10) primary key auto_increment not null, Name varchar(20) not null,
Password varchar(20),
create_date datetime
);
auto_increment 自增长
(18) "Unable to convert MySQL date/time value to System.DateTime"这是因为在日期列中有"0000-00-00"数据值,要修正这个问题,你可以把这些数据设为null,或者在连接字符串中设置"Allow Zero Datetime=True" 。
(19) MySQL视图的FROM子句不允许存在子查询,因此对于SQL Server中FROM子句带有子查询的视图,需要手工进行迁移。可通过消除FROM子句中的子查询,或将FROM子句中的子查询重构为一个新的视图来进行迁移。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说医药卫生SQLServer和MySql语法和关键字的区别(2)在线全文阅读。
相关推荐: