2. MySQL不支持nchar、nvarchar、ntext类型;
3. MySQL数据库的递增语句是AUTO_INCREMENT,而MS SQL是identity(1,1);
4. MS SQL默认到处表创建语句的默认值表示是((0)),而在MySQL里面是不允许带两括号的;
5. MySQL需要为表指定存储类型;
6. MS SQL识别符是[],[type]表示他区别于关键字,但是MySQL却是 `,也就是按键1左边的那个符号;
7. MS SQL支持getdate()方法获取当前时间日期,但是MySQL里面可以分日期类型和时间类型,获取当前日期是cur_date(),当前完整时间是 now()函数;
8. MS SQL不支持replace into语句,但是在最新的SQL Server 2008里面,也支持merge语法;
9. MySQL数据库支持insert into table1 set t1 = ‘’, t2 = ‘’ ,但是MS SQL不支持这样写;
10. MySQL支持insert into tabl1 values (1,1), (1,1), (1,1), (1,1), (1,1), (1,1), (1,1)
11. MS SQL不支持limit语句,是非常遗憾的,只能用top 取代limt 0,N,row_number() over()函数取代limit N,M;
12. MySQL在创建表时要为每个表指定一个存储引擎类型,而MS SQL只支持一种存储引擎;
13. MySQL不支持默认值为当前时间的datetime类型(MS SQL很容易做到),在MySQL里面是用timestamp类型;
14. MS SQL里面检查是否有这个表再删除,需要这样:
if exists (select * from dbo.sysobjects where id = object_id(N'uc_newpm') and OBJECTPROPERTY(id,N'IsUserTable')=1)
但是在MySQL里面只需要 DROP TABLE IF EXISTS cdb_forums
15. MySQL支持无符号型的整数,那么比不支持无符号型的MS SQL就能多出一倍的最大数存储;
16. MySQL不支持在MS SQL里面使用非常方便的varchar(max)类型,这个类型在MS SQL里面既可做一般数据存储,也可以做blob数据存储;
17. MySQL数据库创建非聚集索引只需要在创建表的时候指定为key就行,比如:KEY displayorder (fid,displayorder)
在MS SQL里面必须要:
create unique nonclustered index index_uc_protectedmembers_username_appid on dbo.uc_protectedmembers(username asc,appid asc)
18. MySQL text字段类型不允许有默认值;
19. MySQL的一个表的总共字段长度不超过65XXX。
20. 一个很表面的区别就是MySQL的安装特别简单,而且文件大小才110M(非安装版),相比微软这个庞然大物,安装进度来说简直就是.....
21. MySQL的管理工具有几个比较好的,MySQL_front和官方那个套件,不过都没有SSMS的使用方便,这是MySQL很大的一个缺点。
22. MySQL的存储过程只是出现在最新的版本中,稳定性和性能可能不如MS SQL。
23. 同样的负载压力,MySQL要消耗更少的CPU和内存,MS SQL的确是很耗资源;
24. php连接MySQL数据库和MS SQL的方式都差不多,只需要将函数的MySQL替换成MS SQL即可。
25. MySQL支持 date,time,year类型,MS SQL到2008才支持date和time。
sas引擎将会完全开源,供他人学习效仿。sas引擎定位为第5代杀毒引擎,即人工智能杀毒模式,对比第四代svm引擎,sas引擎的查杀更强,病毒杀得更干净,缺点是速度稍慢,但在计算机运行速度不断提升的今天,sas的相对速度比1年前的svm引擎要快,因此sas引擎将会拥有更好的用户体验和查杀效果,必然会成为更多用户的选择。SAS的数据导入导出大法正所谓巧妇难为无米之炊,数据分析首要的问题是数据的获取。 SAS 作为老牌的统计软件发展至今,已经集成了丰富的数据获取与管理功能组件。本章我们就SAS如何获取数据做重点介绍,并顺带介绍 SAS 如何导出数据文件。
3.1 读取对象与读取方式
说到数据读取这个问题,我们可以从 SAS 读取的对象来说 , 当然也可以从读取的方式来说。从 SAS 读取的对象来说,我们可以把外部数据文件归为四类。
(1)数据库管理系统(Data
Base Management System, DBMS)数据文件,市面的DBMS 非常之多,常见的如 DB2、 Sybase、 mySQL、
MS SQL Server、 Oracle、 Teradata 以及 Hadoop 等。
(2)单机文件(PC file),单机文件应是相对 DBMS 数据文件而言的,常见的单机数据文件包括 MS Access、 MS Excel、 Lotus、 DBF 以及大家更熟悉的 JMP、 SPSS、Stata、 Paradox 等软件的数据文件。
(3)平面文件(Flat
file),这是一种记录间没有结构关系的文件,一个 Flat file 既可以是纯文本文件 (Plain text
file),也可以是二进制文件 (Binary file),对于我们而言,最常见的是纯文本 TXT 文件和 CSV 文件。
(4)流式数据(Instream data),即 SAS 程序中 DATA步里 DATALINES语句后的数据行。
从 SAS 读取的方式来说,笔者总结为 7 类(更准确地讲,应该是 SAS 和外部数据交互的方式,因为不仅仅读入,还有导出等其他交互 *** 作)
(1) LIBNAME 语句, LINAME 语句其实是动用了我们前面提到的数据库引擎来实现 SAS 与其他数据库文件的互通,这是 SAS 获取外部数据库文件最为快速、直接的方式。
(2) SQL 直通设施(SQL pass-through facility),这是直接在 SAS 会话中使用其原生 SQL 语法的方式。
(3) ACCESS/DBLOAD 过程,这是间接访问外部数据库数据文件的方式,不过 SAS已不再推荐。
(4)
IMPORT/EXPORT 过程,前面的三种方式都是包含在 SAS/ACCESS 模块中的, IMPORT/EXPORT 过程则是 Base
SAS 与外部数据集沟通的方式,当然我们在利用IMPORT/EXPORT 过程时,如果安装且拥有 SAS/ACCESS
模块的权限,能够支持的数据类型会更丰富。
(5) INFILE+INPUT 语句,这是通过 DATA 步编程的方式读取外部数据或者流式数据。
(6) INPUT+DATALINES 语句,这是通过 DATA 步编程的方式读取流式数据。
(7) IO 函数,通过输入输出函数打开数据文件,这是一种比较少见的方式
3.2 数据读取策略
在实际工作中,我们的思维模式通常是碰到一种数据,然后思考采用何种方式读入。因此,笔者将数据类型和读入方式做一个综合,从需求出发找解决方法,即从数据类型出发,总结可用的读入方式,并推荐合适的读入方式。具体见表 3-1 的总结。
完 谢谢观看
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)