orcle+mysql+sqlserver三者手工创建数据库对比

首先,sql server建库格式:

详细格式,可查看MSDN:http://msdn.microsoft.com/zh-cn/library/ms176061.aspx
 1 --主要就是T-sql的语法:
2 CREATE DATABASE database_name
3 [ CONTAINMENT = { NONE | PARTIAL }
4 [ ON
5 [ PRIMARY ] <filespec> [ ,...n ]
6 [ , <filegroup> [ ,...n ] ]
7 [ LOG ON <filespec> [ ,...n ] ]
8 ]
9 [ COLLATE collation_name ]
10 [ WITH <option> [,...n ] ]
11 [;]

创建一个基本数据库的示例:

 1 CREATE DATABASE Sales
2 ON
3 ( NAME = Sales_dat,
4 FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf',
5 SIZE = 10,
6 MAXSIZE = 50,
7 FILEGROWTH = 5 )
8 LOG ON
9 ( NAME = Sales_log,
10 FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf',
11 SIZE = 5MB,
12 MAXSIZE = 25MB,
13 FILEGROWTH = 5MB ) ;
14 GO

然后,mysql建库格式:

详细格式,可查看MYSQL官网的文档中心:http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#create-database
1 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
2 [create_specification [, create_specification] ...]
3
4 create_specification:
5 [DEFAULT] CHARACTER SET charset_name
6 | [DEFAULT] COLLATE collation_name

创建一个基本的数据库示例:

create database newdb;

最后,oracle上创建数据库

在这里,先做一下对比。三者之中,mysql格式最为简单,sqlserver次之,oracle最为复杂。其实,oracle复杂,是因为它需要相当多的参数,

详细格式,可查看oracle sql 参考手册:http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_5004.htm#i2061233
 1 CREATE DATABASE sample 
2 CONTROLFILE REUSE
3 LOGFILE
4 GROUP 1 ('diskx:log1.log', 'disky:log1.log') SIZE 50K,
5 GROUP 2 ('diskx:log2.log', 'disky:log2.log') SIZE 50K
6 MAXLOGFILES 5
7 MAXLOGHISTORY 100
8 MAXDATAFILES 10
9 MAXINSTANCES 2
10 ARCHIVELOG
11 CHARACTER SET AL32UTF8
12 NATIONAL CHARACTER SET AL16UTF16
13 DATAFILE
14 'disk1:df1.dbf' AUTOEXTEND ON,
15 'disk2:df2.dbf' AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
16 DEFAULT TEMPORARY TABLESPACE temp_ts
17 UNDO TABLESPACE undo_ts
18 SET TIME_ZONE = '+02:00';

总结这些sql语句在格式上表现得不一致,其实是由于数据库内部的机制不同所造成。所以,不同数据库之间进行数据的转移,还是需要一些额外的格式转换的。








posted @ 2012-03-28 13:07  二郎那个三郎  阅读(1081)  评论(0编辑  收藏  举报