sql server 与 mysql 的区别
由于博主之前学过mysql,目前在学习SQL server,原来以为这两个数据库之间的sql语句应该不会有太大区别。但是学sql server(用的版本是2012) 学久之后,发现与mysql 还是有很多不同的地方,有些时候写起来很不适应,所以就打算写这篇博客来记录一下这两个数据库的sql语句的区别,以备方便将来查询。(每隔一段时间会更新)
1. 首先说一下sql语句结束标志
mysql以
;
结束一条SQL语句;SQL server 以
;
或
go
或不写结束都可以。不过建议写sql server的时候以
go
结束,因为sql server很多语句要以等一个语句结束后才能写下一个语句,不然会报
批处理错误(深受其害)。
2. 查看表结构数量等
mysql 语句
-- 查看系统内所有数据库 show databases;
-- 查询数据库内所有表 show tables;
-- 显示表结构 desc 表名;
sql server语句
-- 查看系统内所有数据库
SELECT name, database_id, create_date FROM sys.databases ;
-- 查询数据库内所有表
select * from sysobjects where xtype= 'U' ;
-- 显示表结构
sp_help/sp_columns 表名;
相比来说,mysql 的更为简洁。
3、查询前几条记录
查询前10条记录:
mysql 语句
select * from student limit 10;
sql server 语句
select top 10 * from student ;
4、获取当前时间
MySQL写法:now()
SQLServer写法:getdate()
5、从数据库定位到某张表
mysql写法:库名.表名
select password from Info.users where userName='boss'
Sqlserver写法:库名.dbo.表名 ;或者:库名..表名 (注:中间使用两个点)
select password from Info.dbo.users where userName='boss'
或者
select password from Info..users where userName='boss'