当前位置:首页 » 编程语言 » unifiedsql
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

unifiedsql

发布时间: 2022-05-20 10:18:09

A. sql SERVER 2012最新的特点

在去年的PASS (Professional Association for SQL Server)峰会上,Microsoft宣布与Hadoop供应商Hortonworks合作,并计划发布Linux版本的Microsoft SQL Server ODBC驱动程序。同时Microsoft也在构建Hadoop连接器,Microsoft表示,随着新连接工具的出现,客户将能够在Hadoop、SQL Server和并行数据仓换环境下相互交换数据。Microsoft已经在大数据领域表明了自己的立场。

SQL Server 2012对于Microsoft来说绝对是重大的更新。Microsoft的目标就是致力成为提高大数据可用性和未来发展的引领厂商。

B. 1.SQL Server 2005数据库引擎(Database Engine) 2.SQL Server 2005分析服务(Analysis Services)

1、Integration Service
SQL Server 2005带来了一个全新的企业级数据整合平台。此平台具有出色的ETL和整合能力,使得组织机构能更加容易地管理来自于不同的关系型和非关系型数据源的数据。通过SQL Server Integration Services(SSIS),组织机构能以整体的视角去考察它们的商业运营情况,从而能具有竞争优势。
企业级数据整合平台
SQL Server Integration Services取代了SQL Server 2000中一个非常受欢迎的功能模块——数据转换服务(DTS)。但SSIS并不是DTS的简单升级,它是SQL Server 2005中的一个全新的组件,它提供了构建企业级ETL应用程序所需的功能和性能。SSIS是可编程的、可嵌入的和可扩展的,这些特性使其成为理想的ETL平台。
传统 ETL 之外的
SQL Server 2005 支持非传统的数据(Web Service,XML):
SSIS 可对不持续的数据进行分析
在数据流中的数据挖掘和文本挖掘
数据流中的数据挖掘和分析可用于数据质量和数据清洗
2、Analysis Service
在SQL Server 2005中,分析服务(Analysis Services)第一次提供了一个统一和集成的商业数据视图,可被用做所有传统报表、OLAP分析(online analytical processing)、关键绩效指标(KPI)记分卡和数据挖掘的基础。
统一空间模型Unified Dimensional Model
通过结合传统OLAP分析和关系型报表中的最佳点,Analysis Services 2005提供了一个元数据模型用于满足不同需求。Analysis Services 2005中的所有多维数据集和维度定义都可从统一空间模型UDM中查阅。UDM是一个中心元数据库,其中定义了业务实体、业务逻辑、计算和metrics,可被作为所有报表、电子表格、OLAP浏览器、KPI和分析应用程序的源来使用。
通过使用新的、功能强大的数据源视图特性、UDM可被映射成后台异构数据源宿主,这样便可无需考虑数据的位置。
利用UDM中对业务实体的友好描述、等级导航、多视角、自动平滑翻译为本机语言这些功能,最终用户将会发现浏览公司业务数据是一件容易的事情。
数据挖掘
Microsoft SQL Server 2005 Data Mining(数据挖掘)属于商务智能技术,它可帮助您构建复杂的分析模型,并使其与您的业务操作相集成。Microsoft SQL Server 2005分析服务中构建了新的数据挖掘平台——一个易于使用的、容易扩展的、方便访问的、非常灵活的平台。对于以前从未考虑过采用数据挖掘的组织机构,这无疑是个非常容易接受的解决方案。
企业级产品的架构,与SQL Server产品家族商业智能功能的紧密集成,丰富的工具、API和算法,这一切使得我们能基于SQL Server创建新型的商业智能应用程序。通过它所提供的针对各种商业问题的自定义的数据驱动解决方案,能达到提高生产力、增加利润和减少支出的目的。
3、Reporting Service
SQL Server 2005 Reporting Services扩展了微软商业智能(BI)平台,以迎合那些需要访问商业数据的信息工作者。Reporting Services是一个基于服务器的企业级报表环境,可借助web services进行管理。报表可以用不同的格式发布,并可带多种交互和打印选项。通过把报表作为更进一步的商业智能的数据源来分发,复杂的分析可被更多的用户所用。
作为SQL Server 2005 的一个集成组件,Reporting Services提供了:
一个高性能引擎用来处理和格式化报表。
一个完整的工具集用来创建、管理和查看报表。
一个可扩展架构和开放式接口可将报表嵌入或集成报表解决方案到不同的IT环境中。
关系型和OLAP报表
在关系型数据上创建报表固然有用,但如能增加更多的分析能力就十分强大了。Reporting Services允许你在关系型和OLAP上创建报表,单独的、或结合的。SQL Server 2005 支持关系型和OLAP数据,其分别提供了SQL Query Editor 和 MDX Query Editor。
报表生成器Report Builder
作为微软SQL SERVER 2005 Reporting Services的一个新组件,Report Builder允许商业用户使用界面友好的数据模型来创建他们自己的报表。报表生成器使Reporting Services平台能够为所有最终用户创建即席查询(ad hoc)报表。用户可以使用报表生成器客户端来创建和编辑报表。报表生成器用户界面是构建在大家熟知的微软office产品之上的,如Excel和PowerPoint。
报表生成器是一种由浏览器来部署的ClickOnce应用程序。用户可以通过选择报表布局模板来开始创建报表,这些模板包含预定义的数据区,如:表格、矩阵表和图表。接着用户可以从模型中拖放报表项到设计界面,并可设置约束来过滤数据。报表生成器自动生成源查询和检索请求数据所需要的所有信息都包含在这个模型中。报表生成器还允许用户:
向报表增加文本和格式
使用模型创建新的字段和计算定义
预览、打印和发布报表
把报表数据导出为如Excel之类的格式

C. sql语句帮助(高分悬赏)

api(application programming interfaces,应用程序接口)
ascii(american standard code for information interchange,美国国家标准信息交换代码)
atl: activex template library(activex模板库)
basic:beginner's all-purpose symbolic instruction code(初学者通用指令代码)
com: component object model(组件对象模式)
dna: distributed internet application(分布式因特网应用程序)
mfc: microsoft foundation classes(微软基础类库)
sdk(software development kit,软件开发工具包)

windows
ce(consumer electronics,消费电子)
dcom: distributing component object model,构造物体模块
dhcp: dynamic host configuration protocol,动态主机分配协议
dmf: distribution media format
gdi(graphics device interface,图形设备接口)
gui(graphics user interface,图形用户界面)
gpf(general protect fault,一般保护性错误)
hta: hypertext application,超文本应用程序
inf file(information file,信息文件)
ini file(initialization file,初始化文件)
ndis: network driver interface specification,网络驱动程序接口规范
nt(new technology,新技术)
qos: quality of service,服务质量
rrvp: resource reservation protocol(资源保留协议)
rtos(real time operating systems,实时操作系统)
sbfs: simple boot flag specification,简单引导标记规范
vefat: virtual file allocation table(虚拟文件分配表)
(vxd,virtual device drivers,虚拟设备驱动程序)
wdm(windows driver model,视窗驱动程序模块)
winsock: windows socket,视窗套接口
whql: windows hardware quality labs,windows硬件质量实验室
whs: windows Xing host,视窗脚本程序
zam: zero administration for windows,零管理视窗系统

加密
ecc: elliptic curve crypto(椭圆曲线加密)
set: secure electronic transaction(安全电子交易)

语言
css: cascading style sheets,层叠格式表
dcd: X content deXion for xml: xml文件内容描述
dtd: X type definition,文件类型定义
html(hypertext markup language,超文本标记语言)
jvm: X virtual machine, X虚拟机
oji: open X vm interface,开放X虚拟机接口
sgml: standard generalized markup language,标准通用标记语言
smil: synchronous multimedia integrate language(同步多媒体集成语言)
vrml:virtual reality makeup language,虚拟现实结构化语言
vxml(voice extensible markup language,语音扩展标记语言)
xml: extensible markup language(可扩展标记语言)
xsl: extensible style sheet language(可扩展设计语言)
adimm(advanced al in-line memory moles,高级双重内嵌式内存模块)
amr(audio/modem riser;音效/调制解调器主机板附加直立插卡)
aha(accelerated hub architecture,加速中心架构)
ask ir(amplitude shift keyed infra-red,长波形可移动输入红外线)
atx: at extend(扩展型at)
bios(basic input/output system,基本输入/输出系统)
cse(configuration space enable,可分配空间)
db: device bay,设备插架
dmi(desktop management interface,桌面管理接口)
eb(expansion bus,扩展总线)
eisa(enhanced instry standard architecture,增强形工业标准架构)
emi(electromagnetic interference,电磁干扰)
escd(extended system configuration data,可扩展系统配置数据)
fbc(frame buffer cache,帧缓冲缓存)
firewire(火线,即ieee1394标准)
fsb: front side bus,前置总线,即外部总线
fwh( firmware hub,固件中心)
gmch(graphics & memory controller hub,图形和内存控制中心)
gpis(general purpose inputs,普通操作输入)
ich(input/output controller hub,输入/输出控制中心)
ir(infrared ray,红外线)
irda(infrared ray,红外线通信接口可进行局域网存取和文件共享)
isa: instry standard architecture,工业标准架构
isa(instruction set architecture,工业设置架构)
mdc(mobile daughter card,移动式子卡)
mrh-r(memory repeater hub,内存数据处理中心)
mrh-s(sdram repeater hub,sdram数据处理中心)
mth(memory transfer hub,内存转换中心)
ngio(next generation input/output,新一代输入/输出标准)
p64h(64-bit pci controller hub,64位pci控制中心)
pcb(printed circuit board,印刷电路板)
pcba(printed circuit board assembly,印刷电路板装配)
pci: peripheral component interconnect,互连外围设备
pci sig(peripheral component interconnect special interest group,互连外围设备专业组)
post(power on self test,加电自测试)
rng(random number generator,随机数字发生器)
rtc: real time clock(实时时钟)
kbc(keybroad control,键盘控制器)
sap(sideband address port,边带寻址端口)
sba(side band addressing,边带寻址)
sma: share memory architecture,共享内存结构
std(suspend to disk,磁盘唤醒)
str(suspend to ram,内存唤醒)
svr: switching voltage regulator(交换式电压调节)
usb(universal serial bus,通用串行总线)
usdm(unified system diagnostic manager,统一系统监测管理器)
vid(voltage identification definition,电压识别认证)
vrm (voltage regulator mole,电压调整模块)
zif: zero insertion force, 零插力
主板技术
gigabyte
acops: automatic cpu overheat prevention system(cpu过热预防系统)
siv: system information viewer(系统信息观察)
磐英
esdj(easy setting al jumper,简化cpu双重跳线法)
浩鑫
upt(usb、panel、link、tv-out四重接口)
芯片组
acpi(advanced configuration and power interface,先进设置和电源管理)
agp(accelerated graphics port,图形加速接口)
i/o(input/output,输入/输出)
mioc: memory and i/o bridge controller,内存和i/o桥控制器
nbc: north bridge chip(北桥芯片)
piix: pci isa/ide accelerator(加速器)

pse36: page size extension 36-bit,36位页面尺寸扩展模式
pxb: pci expander bridge,pci增强桥
rcg: ras/cas generator,ras/cas发生器
sbc: south bridge chip(南桥芯片)
smb: system management bus(全系统管理总线)
spd(serial presence detect,内存内部序号检测装置)
ssb: super south bridge,超级南桥芯片
tdp: triton data path(数据路径)
tsc: triton system controller(系统控制器)
qpa: quad port acceleration(四接口加速)
3dnow!(3d no waiting)
alu(arithmetic logic unit,算术逻辑单元)
agu(address generation units,地址产成单元)
bga(ball grid array,球状矩阵排列)
bht(branch prediction table,分支预测表)
bpu(branch processing unit,分支处理单元)
brach pediction(分支预测)
cmos: complementary metal oxide semiconctor,互补金属氧化物半导体
cisc(complex instruction set computing,复杂指令集计算机)
clk(clock cycle,时钟周期)
cob(cache on board,板上集成缓存)
cod(cache on die,芯片内集成缓存)
cpga(ceramic pin grid array,陶瓷针型栅格阵列)
cpu(center processing unit,中央处理器)
data forwarding(数据前送)
decode(指令解码)
dib(al independent bus,双独立总线)
ec(embedded controller,嵌入式控制器)
embedded chips(嵌入式)
epic(explicitly parallel instruction code,并行指令代码)
fadd(floationg point addition,浮点加)
fcpga(flip chip pin grid array,反转芯片针脚栅格阵列)
fdiv(floationg point divide,浮点除)
femms:fast entry/exit multimedia state,快速进入/退出多媒体状态
fft(fast fourier transform,快速热欧姆转换)
fid(fid:frequency identify,频率鉴别号码)
fifo(first input first output,先入先出队列)
flip-chip(芯片反转)
flop(floating point operations per second,浮点操作/秒)
fmul(floationg point multiplication,浮点乘)
fpu(float point unit,浮点运算单元)
fsub(floationg point subtraction,浮点减)
gvpp(generic visual perception processor,常规视觉处理器)
hl-pbga: 表面黏着,高耐热、轻薄型塑胶球状矩阵封装
ia(intel architecture,英特尔架构)
icu(instruction control unit,指令控制单元)
id:identify,鉴别号码
idf(intel developer forum,英特尔开发者论坛)
ieu(integer execution units,整数执行单元)
imm: intel mobile mole, 英特尔移动模块
instructions cache,指令缓存
instruction coloring(指令分类)
ipc(instructions per clock cycle,指令/时钟周期)
isa(instruction set architecture,指令集架构)
kni(katmai new instructions,katmai新指令集,即sse)
latency(潜伏期)
ldt(lightning data transport,闪电数据传输总线)
local interconnect(局域互连)
mesi(modified, exclusive, shared, invalid:修改、排除、共享、废弃)
mmx(multimedia extensions,多媒体扩展指令集)
mmu(multimedia unit,多媒体单元)
mflops(million floationg point/second,每秒百万个浮点操作)
mhz(million hertz,兆赫兹)
mp(multi-processing,多重处理器架构)
mps(multiprocessor specification,多重处理器规范)
msrs(model-specific registers,特别模块寄存器)
naoc(no-account overclock,无效超频)
ni:non-intel,非英特尔
olga(organic land grid array,基板栅格阵列)
ooo(out of order,乱序执行)
pga: pin-grid array(引脚网格阵列),耗电大
post-risc
pr(performance rate,性能比率)
psn(processor serial numbers,处理器序列号)
pib(processor in a box,盒装处理器)
ppga(plastic pin grid array,塑胶针状矩阵封装)
pqfp(plastic quad flat package,塑料方块平面封装)
raw(read after write,写后读)
register contention(抢占寄存器)
register pressure(寄存器不足)
register renaming(寄存器重命名)
remark(芯片频率重标识)
resource contention(资源冲突)
retirement(指令引退)
risc(reced instruction set computing,精简指令集计算机)
sec: single edge connector,单边连接器
shallow-trench isolation(浅槽隔离)
simd(single instruction multiple data,单指令多数据流)
sio2f(fluorided silicon oxide,二氧氟化硅)
smi(system management interrupt,系统管理中断)
smm(system management mode,系统管理模式)
smp(symmetric multi-processing,对称式多重处理架构)
soi: silicon-on-insulator,绝缘体硅片
sonc(system on a chip,系统集成芯片)
spec(system performance evaluation corporation,系统性能评估测试)
sqrt(square root calculations,平方根计算)
sse(streaming simd extensions,单一指令多数据流扩展)
superscalar(超标量体系结构)
tcp: tape carrier package(薄膜封装),发热小
throughput(吞吐量)
tlb(translate look side buffers,翻译旁视缓冲器)
uswc(uncacheabled speculative write combination,无缓冲随机联合写操作)
valu(vector arithmetic logic unit,向量算术逻辑单元)
vliw(very long instruction word,超长指令字)
vpu(vector permutate unit,向量排列单元)
vpu(vector processing units,向量处理单元,即处理mmx、sse等simd指令的地方)
library 库,程序库
linkage 连接
to load 装入,寄存,写入,加载
location 存储单元
logger 登记器,记录器
loop 循环
machine language 机器语言
magnetic storage 磁存储器
magnetic tape 磁带
matrix 矩阵
memory 存储器
message 信息,报文
microcomputer 微型计算机
mole 组件,模块
monitor 监视器,监督程序,管程
nanosecond 毫微秒
network 网络,网
numeric, numerical 数字的,数值的
octet 八位位组,八位字节
operator 操作员
optical character reader 光符阅读机
optical scanner 光扫描器
output 输出
overflow 溢出,上溢
panel 平板
parameter 参数,参量
perforator 穿孔机
peripheral equipment 外围设备,外部设备
personal computer 个人计算机
printed circuit 印制电路
printer 打印机
printout 打印输出
to process 处理
processing unit 处理部件
program 程序
to program 程序编制
programmer 程序设计员
programming 程序设计,程序编制
pulse 脉冲
punch 穿孔
to punch 穿孔
punched card, punch card 穿孔卡片
punched tape, punch tape 穿孔纸带
punch hole 孔,穿孔
random access 随机存取
to read 读
reader 阅读程序
reading 阅读
real time 实时
record, register 记录
rendancy 冗余
routine 例行程序
selector 选择器,选择符
sentinel 标记
sequence 序列,顺序
sequential 顺序的
serial 串行的.连续的
shift 移位,移数
signal 信号
simulation 模拟
simulator 模拟器,模拟程序
software 软件,软设备
sort 分类,排序
sorter 分类人员,分类机,分类程序,排序程序
storage 存储器
to store 存储
subroutine, subprogram 子程序
switch 开关
symbol 符号
symbolic language 符号语言
system 系统
tabulator 制表机
teleprinter 电传打字机
terminal 终端
terminal unit 终端设备
timer 时钟,精密计时器
time sharing 分时
timing 定时
track 磁道
transcer 传感器,翻译机
translator 翻译程序,翻译器
to update 更新
Winchester disk drive 温彻斯特磁盘机,硬盘
working storage 工作存储器
c2c: card-to-card interleaving,卡到卡交错存取
cc-numa(cache-coherent non uniform memory access,连贯缓冲非统一内存寻址)
chrp(common hardware reference platform,共用硬件平台,ibm为powerpc制定的标准,可以兼容mac os, windows nt, solaris, os/2, linux和aix等多种操作系统)
emp: emergency management port,紧急事件管理端口
icmb: inter-chassis management bus, 内部管理总线
mpp(massive parallel processing,巨量平行处理架构)
mux: data path multiplexor,多重路径数据访问

D. 各个端口都代表什么意思

按照端口号的大小分类,可分为如下几类 :

(1)公认端口(WellKnownPorts):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。

(2)注册端口(RegisteredPorts):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。

(3)动态和/或私有端口(Dynamicand/orPrivatePorts):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。


(4)unifiedsql扩展阅读

各种服务常用端口号:

1,HTTP协议代理服务器常用端口号:80/8080/3128/8081/9098

2,SOCKS代理协议服务器常用端口号:1080

3,FTP(文件传输)协议代理服务器常用端口号:21

4,Telnet(远程登录)协议代理服务器常用端口号:23

5,HTTP服务器,默认端口号为80/tcp(木马Executor开放此端口)

6,HTTPS(securely transferring web pages)服务器,默认端口号为443/tcp 443/udp

7,Telnet(不安全的文本传送),默认端口号为23/tcp(木马Tiny Telnet Server所开放的端口)

8,FTP,默认的端口号为21/tcp(木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口)

9,TFTP(Trivial File Transfer Protocol),默认端口号为69/udp

10,SSH(安全登录)、SCP(文件传输)、端口号重定向,默认的端口号为22/tcp

11,SMTP Simple Mail Transfer Protocol(E-mail),默认端口号为25/tcp(木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口)

12,POP3 Post Office Protocol(E-mail),默认端口号为110/tcp

13,Webshpere应用程序,默认端口号为9080

14,webshpere管理工具,默认端口号9090

15,JBOSS,默认端口号为8080

16,TOMCAT,默认端口号为8080

17,WIN2003远程登录,默认端口号为3389

18,Symantec AV/Filter for MSE,默认端口号为 8081

19,Oracle 数据库,默认的端口号为1521

20,ORACLE EMCTL,默认的端口号为1158

21,Oracle XDB(XML 数据库),默认的端口号为8080

22,Oracle XDB FTP服务,默认的端口号为2100

23,MS SQL*SERVER数据库server,默认的端口号为1433/tcp 1433/udp

24,MS SQL*SERVER数据库monitor,默认的端口号为1434/tcp 1434/udp

E. sql 2008和sql 2012的区别

sql 2008和sql 2012的区别为:版本不同、数据压缩不同、加密不同。

一、版本不同

1、sql 2008:sql 2008包含企业版(Enterprise)、标准版(Standard)、专业版(Developer)。

2、sql 2012:sql 2012包含企业版(Enterprise)、标准版(Standard)、专业版(Developer)、商业智能版(Business Intelligence)。

二、数据压缩不同

1、sql 2008:sql 2008没有数据压缩,基于策略的管理和集成全文检索功能。。

2、sql 2012:sql 2012具有数据压缩,基于策略的管理和集成全文检索功能。

三、加密不同

1、sql 2008:sql 2008需要改动应用程序对整个数据库、数据文件和日志文件进行加密。

2、sql 2012:sql 2012可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序。

F. ibm data studio 如何导入表结构

BM Data Studio Developer V1.2 包含一个 Unified Debugger 客户机,支持调试 SQL 存储过程。如果您熟悉用 Eclipse 平台调试应用程序,会发现调试 DB2 SQL 过程的步骤是很相似的。在本文中,介绍如何使用 IBM Data Studio Developer V1.2 中的调试特性调试一个示例 DB2 for z/OS SQL 存储过程。本文中的许多步骤也可以应用于在 DB2 for Linux®, UNIX®, and Windows® 和 DB2 for i 上创建的 SQL 存储过程。本文中使用的示例存储过程专门针对 DB2 for z/OS v9。
要想从本文获得最大收益,您应该熟悉使用 IBM Data Studio Developer 创建数据库连接以及操作表和存储过程等数据库对象。熟悉 IBM Data Studio Developer 的好方法是下载试用版并阅读它的教程系列(见 参考资料)。
了解不同 DB2 版本中的调试器技术
DB2 for z/OS 有两种 IBM 调试器技术:
老式技术称为 SQL Debugger,支持 DB2 for z/OS V8(包含与 LUW V8 FP7 同时发布的 V8 PTF UK03933)。它只为外部 SQL 存储过程提供调试器支持。
Unified Debugger 是最新的调试器技术,支持 DB2 for z/OS V8(包含与 DB2 for Linux, UNIX, and Windows V9 FP2 同时发布的 PTF UK25860)和 DB2 for z/OS V9。对于 DB2 for z/OS V8,可以使用 Unified Debugger 调试外部 SQL 存储过程。但是,对于 DB2 for z/OS V9,它支持调试 Java 存储过程、原生 SQL 过程和外部 SQL 存储过程。
这两种技术之间的主要差异是,Unified Debugger 同时支持调试 Java 和 SQL 过程,而且继续支持调试嵌套的过程调用。本文讨论 Unified Debugger。
准备示例表
本文中创建的存储过程是用原生 SQL 编写的,以商品 ID 作为输入,使用 PRODUCT 表中存储的成本、送货费用和客户付款信息计算商品的利润。存储过程的输出称为 PROFIT,这一数据被存储回 PRODUCT 表。
清单 1 给出创建和填充 PRODUCT 表所需的 DDL。如果希望检验过程中的 SQL 语句,需要先运行这个 DDL。

清单 1. 创建示例 proct 表的 DDL

CREATE TABLE ADMF001.PRODUCT
(
ITEM VARCHAR(6) NOT NULL,
COST DECIMAL(8,2),
SHIPPING DECIMAL(8,2),
PAYMENT DECIMAL(8,2),
PROFIT DECIMAL(8,2)
);

G. sql server2008与sql server2012差别大吗

1. AlwaysOn - 这个功能将数据库的镜像提到了一个新的高度。用户可以针对一组数据库做灾难恢复而不是一个单独的数据库。

2. Windows Server Core 支持 - Windows Server COre 是命令行界面的 Windows,使用 DOS 和 PowerShell 来做用户交互。它的资源占用更少,更安全,支持 SQL Server 2012。

3. Columnstore 索引 - 这是 SQL Server 独有的功能。它们是为数据仓库查询设计的只读索引。数据被组织成扁平化的压缩形式存储,极大的减少了 I/O 和内存使用。

4. 自定义服务器权限 - DBA 可以创建数据库的权限,但不能创建服务器的权限。比如说,DBA想要一个开发组拥有某台服务器上所有数据库的读写权限,他必须手动的完成这个操作。但是 SQL Server 2012 支持针对服务器的权限设置。

5. 增强的审计功能 - 现在所有的 SQL Server 版本都支持审计。用户可以自定义审计规则,记录一些自定义的时间和日志。

6. BI 语义模型 - 这个功能是用来替代“Analysis Services Unified Dimentional Model”的。这是一种支持 SQL Server 所有 BI 体验的混合数据模型。

7. Sequence Objects - 用 Oracle 的人一直想要这个功能。一个序列(sequence)就是根据触发器的自增值。SQL Serve 有一个类似的功能,identity columns,但是现在用对象实现了。

8. 增强的 PowerShell 支持 - 所有的 Windows 和 SQL Server 管理员都应该认真的学习 PowderShell 的技能。微软正在大力开发服务器端产品对 PowerShell 的支持。

9. 分布式回放(Distributed Replay) - 这个功能类似 Oracle 的 Real Application Testing 功能。不同的是 SQL Server 企业版自带了这个功能,而用 Oracle 的话,你还得额外购买这个功能。这个功能可以让你记录生产环境的工作状况,然后在另外一个环境重现这些工作状况。

10. PowerView - 这是一个强大的自主 BI 工具,可以让用户创建 BI 报告。

11. SQL Azure 增强 - 这和 SQL Server 2012 没有直接关系,但是微软确实对 SQL Azure 做了一个关键改进,例如 Reporint Service,备份到 Windows Azure 。Azure 数据库的上限提高到了150G。

12. 大数据支持 - 这是最重要的一点,虽然放在了最后。去年的 PASS(Professional Association for SQL Server)会议,微软宣布了与 Hadoop 的提供商 Cloudera 的合作。一是提供 Linux 版本的 SQL Server ODBC 驱动。主要的合作内容是微软开发 Hadoop 的连接器,也就是 SQL Server 也跨入了 NoSQL 领域。

H. data studio中的存储过程怎么写。使用datastudio

简介
IBM Data Studio Developer V1.2 包含一个 Unified Debugger 客户机,支持调试 SQL 存储过程。如果您熟悉用 Eclipse 平台调试应用程序,会发现调试 DB2 SQL 过程的步骤是很相似的。在本文中,介绍如何使用 IBM Data Studio Developer V1.2 中的调试特性调试一个示例 DB2 for z/OS SQL 存储过程。本文中的许多步骤也可以应用于在 DB2 for Linux®, UNIX®, and Windows® 和 DB2 for i 上创建的 SQL 存储过程。本文中使用的示例存储过程专门针对 DB2 for z/OS v9。
要想从本文获得最大收益,您应该熟悉使用 IBM Data Studio Developer 创建数据库连接以及操作表和存储过程等数据库对象。熟悉 IBM Data Studio Developer 的好方法是下载试用版并阅读它的教程系列(见 参考资料)。
了解不同 DB2 版本中的调试器技术
DB2 for z/OS 有两种 IBM 调试器技术:
老式技术称为 SQL Debugger,支持 DB2 for z/OS V8(包含与 LUW V8 FP7 同时发布的 V8 PTF UK03933)。它只为外部 SQL 存储过程提供调试器支持。
Unified Debugger 是最新的调试器技术,支持 DB2 for z/OS V8(包含与 DB2 for Linux, UNIX, and Windows V9 FP2 同时发布的 PTF UK25860)和 DB2 for z/OS V9。对于 DB2 for z/OS V8,可以使用 Unified Debugger 调试外部 SQL 存储过程。但是,对于 DB2 for z/OS V9,它支持调试 Java 存储过程、原生 SQL 过程和外部 SQL 存储过程。
这两种技术之间的主要差异是,Unified Debugger 同时支持调试 Java 和 SQL 过程,而且继续支持调试嵌套的过程调用。本文讨论 Unified Debugger。
准备示例表
本文中创建的存储过程是用原生 SQL 编写的,以商品 ID 作为输入,使用 PRODUCT 表中存储的成本、送货费用和客户付款信息计算商品的利润。存储过程的输出称为 PROFIT,这一数据被存储回 PRODUCT 表。
清单 1 给出创建和填充 PRODUCT 表所需的 DDL。如果希望检验过程中的 SQL 语句,需要先运行这个 DDL。

清单 1. 创建示例 proct 表的 DDL

CREATE TABLE ADMF001.PRODUCT
(
ITEM VARCHAR(6) NOT NULL,
COST DECIMAL(8,2),
SHIPPING DECIMAL(8,2),
PAYMENT DECIMAL(8,2),
PROFIT DECIMAL(8,2)
);

INSERT INTO ADMF001.PRODUCT (ITEM, COST, SHIPPING, PAYMENT)
VALUES ('001', 100.00, 19.99, 150);

INSERT INTO ADMF001.PRODUCT (ITEM, COST, SHIPPING, PAYMENT)
VALUES ('002',80, 8.99, 99.99);

创建和部署存储过程
在本节中,使用 Stored Procere 向导生成示例存储过程的简单版本。需要修改生成的存储过程,添加计算利润的逻辑。然后,学习如何指定在启用调试选项的情况下部署存储过程。如果不这样做,就无法调试存储过程。
创建过程
调试现有的存储过程
如果在服务器上有任何现有的 SQL 存储过程,那么可以把它从 Database Explorer 拖入数据开发项目中,然后进行调试。但是,需要确保存储过程为调试做好了准备,这意味着存储过程在部署时要启用调试选项。
如果存储过程在部署时没有 启用调试选项,就无法调试它;必须选择 Enable debugging 并再次部署它。
按照以下步骤创建名为 PROFITUPDATE 的示例存储过程:
首先,在 Data Studio Developer 中使用 DB2 for z/OS 数据库连接创建一个新的数据开发项目。选择 File > New > Data Development Project。向导要求指定一个数据库连接。如果还没有数据库连接,那么可以使用数据库连接向导创建一个 DB2 for z/OS 数据库连接。

图 1. 选择数据库连接

接下来,使用 New Stored Procere 向导创建一个 SQL 存储过程。可以右键单击刚才创建的项目,选择 New > Stored Procere(见图 2),从而启动 New Stored Procere 向导。把存储过程命名为 PROFITUPDATE 并指定原生 SQL 作为它的语言。

图 2. 创建新的 SQL 存储过程

在 SQL Statements 页面上,在 Statement details 框中添加清单 2 所示的 SQL 语句。注意,变量名前面有一个冒号 (:),这把它定义为主机变量。

清单 2. PROFITUPDATE 存储过程的 SQL 语句

SELECT COST, SHIPPING, PAYMENT FROM PRODUCT
WHERE ITEM = :itemID;

图 3. SQL Statements 页面

单击 Validate 按钮检查 SQL 语法。如果语法有错误,它会在把语句写入过程之前指出错误。另外,它还帮助格式化 SQL 语句。图 3 给出检查之后语句的样子。单击 Next。
在 Parameters 页面上(图 4),会注意到已经基于主机变量 :itemID 创建了输入变量 itemID。在这个页面上,可以修改现有的参数、添加新参数和删除不再需要的参数。

图 4. Parameters 页面

现在,必须通过单击 Add… 按钮添加第二个参数(输出参数)。这个参数名为 itemProfit,模式为 OUT。类型为 Decimal (8,2),见图 5。单击 OK。

图 5. 添加参数

在向导的 Deploy Options 页面上,可以通过选中 Enable debugging 复选框启用调试,见图 6。单击 Finish。

图 6. 确保选中 Enable debugging 复选框

现在,应该会在图 6-1 所示的编辑器中打开创建的存储过程。

图 6-1. 生成的过程

在查看源代码时,会注意到它不包含计算利润的逻辑。需要修改存储过程的过程体,添加这种逻辑。为了节省时间,可以复制并粘贴清单 3 所示的示例过程体。

清单 3. 计算利润的存储过程

CREATE PROCEDURE PROFITUPDATE ( IN itemID VARCHAR(6),
OUT itemProfit DECIMAL(8, 2) )
VERSION VERSION1
ISOLATION LEVEL CS
LANGUAGE SQL
ALLOW DEBUG MODE
WLM ENVIRONMENT FOR DEBUG MODE WLMENV1
QUALIFIER ADMF001
COMMIT ON RETURN YES
------------------------------------------------------------------------
-- SQL Stored Procere
-- itemID
-- itemProfit
------------------------------------------------------------------------
P1: BEGIN
-- Declare variables

DECLARE itemPayment DECIMAL(8,2) DEFAULT 0.0;
DECLARE total_cost DECIMAL(8,2) DEFAULT 0.0;

P2: BEGIN
DECLARE itemCost DECIMAL(8,2) DEFAULT 0.0;
DECLARE itemShippingFee DECIMAL(8,2) DEFAULT 0.0;

-- Declare cursor
DECLARE cursor1 CURSOR FOR
SELECT COST, SHIPPING, PAYMENT FROM PRODUCT
WHERE ITEM = itemID;

OPEN cursor1;

FETCH cursor1 INTO itemCost, itemShippingFee, itemPayment;
SET total_cost = itemCost + itemShippingFee;

END P2;

SET itemProfit = itemPayment - total_cost;
UPDATE PRODUCT SET PROFIT = itemProfit
WHERE ITEM = itemID;
END P1

单击 Save 保存存储过程。现在要部署存储过程了。
部署存储过程
为了部署存储过程,在 Data Project Explorer 中右键单击过程并选择 Deploy。因为前面在创建这个过程时启用了调试,它在部署时会启用调试选项。如果还没有启用调试选项,仍然可以在部署向导的 Routine Options 部分中选中 Enable debugging 复选框(图 7)。

图 7. Deploy Routines 向导中的 Enable debugging 选项

设置调试器会话管理程序
在调试存储过程之前,了解调试器框架会有帮助。Unified Debugger 有三个组件:服务器、客户机和会话管理程序,见图 8。在这个框架中,客户机与会话管理程序通信,会话管理程序与服务器通信,从而交换调试信息和请求。

图 8. Unified Debugger 框架

可以看出会话管理程序非常重要,它是一个中间件,负责通过 TCP/IP 连接协调客户机和服务器之间的通信。在使用调试器之前,需要在网络上某个地方(客户机、服务器或其他地方)启动会话管理程序进程。如果还没有正确地设置它,那么由于会话管理程序不可用,在使用 IBM Data Studio Developer 时会遇到问题(图 9),因此无法使用 Unified Debugger。

图 9. 会话管理程序不可用

如果在环境中的服务器上运行会话管理程序,就不需要在客户端做任何设置。但是,服务器端设置很复杂(尤其是在 z/OS 环境中),所以本文只关注在客户端上使用调试器,服务器端设置留到另一篇文章中讨论。同时,建议通过 参考资料 中列出的 Redbook 了解为存储过程调试设置 DB2 for z/OS 环境的信息。
如果会话管理程序不在本地运行,应该怎么办?
如果会话管理程序在网络上的某个地方运行,那么仍然可以使用本节描述的步骤,但是需要找到驻留它的服务器上的 db2dbgm.bat。
使用会话管理程序的最简便方法是在客户机上运行它,然后配置 debugger Preferences 页面。在客户机上运行会话管理程序的步骤如下:
找到 Data Studio Developer v1.2 附带的会话管理程序。这个文件名为 db2dbgm.bat。它位于以下目录中:
[DS install directory] \dsdev\bin

在命令提示窗口中执行 db2dbgm.bat。它会提供一个主机 IP 地址和端口号,您应该记住它们。它的设置还包括超时信息。图 10 所示的 db2dbgm.bat 示例输出表明,如果会话管理程序空闲了 50 分钟,它就会超时。(指定零值表示没有会话管理程序超时)。可以通过编辑 db2dbgm.bat 修改空闲时间和端口号。

图 10. 启动会话管理程序并获得 IP 地址和端口号

既然已经得到了正在运行的会话管理程序的 IP 地址和端口号,就需要在调试器首选项的会话管理程序部分中输入这些信息:
选择 Window>Preferences…。
在 Run/Debug > DB2 Stored Procere Debugger 下面找到 debugger preferences 页面。
单击 debugger preferences 页面上的 Use already running session manager 单选按钮,输入前面记下的 IP 地址和端口号。

图 11. 在首选项中指定会话管理程序的 IP 地址和端口号

注意:不要关闭会话管理程序窗口,因为这会结束会话管理程序会话。因此,应该继续调试并让会话管理程序窗口在后台运行。
设置其他调试器首选项
除了会话管理程序之外,还可以在开始调试之前配置其他调试器首选项。本节简要介绍其中两个选项,见图 12。

图 12. DB2 存储过程调试器首选项

Inactivity setting:在让调试器停在一个断点上时,如果不执行任何进一步的调试操作,就认为调试是空闲的。为了避免无限期地持有服务器资源,调试器假设在经过指定的无活动时间段之后应该结束调试,让过程自动地运行完。可以在 Debugger preference 页面上指定调试器的无活动时间长度。默认值是 300 秒。
Error trace setting:为了帮助判断问题,IBM 服务代表可能要求您在服务器上启用诊断跟踪。值 2 在 DB2 服务器上启用完整的诊断跟踪。除非 IBM 服务代表明确要求启用服务器诊断跟踪,否则应该保持这个设置为 0(零)。
可选:在进行调试之前设置运行设置
最后,作为开始调试之前的最后一个可选步骤,指定应用于本次运行的设置,包括:
指定在调试之前或之后运行的某些 SQL 语句(对这些语句不进行调试)
设置一个输入参数值
指定是否把更改提交到数据库
为 DB2 for z/OS 连接设置集合 ID
示例存储过程在最后更新 PRODUCT 表。为了检查更新,可以用一个运行后语句显示对 PRODUCT 表执行 SELECT 语句的结果。本节介绍具体做法。
在 Data Project Explorer 中右键单击存储过程并选择 Run Settings,打开 Run Settings 对话框,见图 13。

图 13. Run settings 菜单

Run settings 窗口有多个选项卡。选择 After Run 选项卡并输入 select * from PRODUCT 语句,见图 14。

图 14. Run settings 对话框窗口

在运行或调试存储过程之后,会执行这个 SQL 语句。利润更新的结果会显示在输出视图中。
注意:在 Run Settings 对话框中,还可以在 Parameter Values 选项卡中指定参数值。但是,如果不在这里指定,在调试过程中仍然有机会指定参数值。
回页首
开始调试
现在,已经完成了所有设置活动,可以开始调试存储过程了。
开始调试的方法是在 Data Project Explorer 中右键单击存储过程名,然后选择 Debug…,见图 15。

图 15. 在 Data Project Explorer 中从过程启动调试器

调试器首先启动标准的 Eclipse 调试配置页面,见图 16。所有配置项都预先设置了。单击 Debug 继续。

图 16. 调试配置页面

因为示例存储过程有一个输入变量,所以调试器会打开 Specify Parameter Values 对话框,可以在其中输入参数值。如果前面在 Run Settings 对话框中输入了参数值,这个值会再次显示出来,可以检查或修改它。

图 17. Specify Parameter Values 对话框

调试在 Debug 透视图中进行。下面的窗口要求您确认切换到 Debug 透视图。单击 Yes 继续。还可以单击复选框让它记住您的决定,这样就不会再提示确认。

图 18. 切换到 Debug 透视图

现在,调试器开始工作了。在存储过程逻辑前面包含 PROCEDURE 关键字的行上总是设置一个隐含的断点。当前位置用一个箭头突出显示。可以让过程停在任何执行行上进行调试。如果设置了任何断点,还可以一直运行到下一个有效断点。

图 19. 调试器停在第一行上

回页首
调试器透视图、视图和操作
Eclipse Debug 透视图(图 20)提供几个帮助调试存储过程的视图。本节介绍这些视图。
Debug 视图
Variables 视图
Breakpoints 视图
Data Output 视图

图 20. Debug 透视图概况

Debug 视图
Debug 视图显示当前的调用堆栈。它提供存储过程名和当前行号。在 Debug 视图中,可以通过图 21 所示的工具栏执行不同的操作,包括 Step Into、Step Over、Step Return、Resume 和 Terminate:

图 21. Debug 视图及其操作

使用 Step Over 逐行调试过程。

使用 Step Into 调试嵌套的过程。如果没有嵌套的过程,那么它的作用与 Step Over 相同。

Step Return 帮助从嵌套的过程返回。如果当前不在嵌套的过程中,那么 Step Return 运行完整个过程,忽略所有断点。

当停在某一行上时,可以使用 Resume 执行到下一个有效的断点。如果后面没有有效的断点,就一直运行到过程结束并停止调试。

使用 Terminate 在任何时候停止调试。

最后,可以通过单击这个图标删除所有终止的运行:

关于嵌套过程的提示:如果有嵌套的过程调用,Debug 视图可以提供外层过程和嵌套过程的调试信息,包括每个过程中的当前行号。
图 22 给出一个调试嵌套的存储过程的示例,其中的 Procere1 调用 Procere2。在调用 procere2(var1) 的行上,如果选择 step into 操作,调试器就会进入 Procere2 内部,从第一行开始调试 Procere2。在调用堆栈上可以看到,Procere2 现在出现在 Procere1 上面。调试完 Procere2 之后,调试器回到 Procere1。

图 22. 调试嵌套的存储过程

Variables 视图
Variables 视图(图 23)显示当前可用的变量和参数的当前值。Unified Debugger 还显示 SQLCODE 和 SQLSTATE 诊断信息。

图 23. Variables 视图

在 Variables 视图中可以:
指定变量修改断点。
把所有变量值复制并粘贴到其他文件。
根据调试的需要修改变量值。可以双击变量值并输入新值,也可以右键单击变量并从弹出菜单中选择 Change Value…,见图 24。

图 24. 在 Variables 视图中查看并修改变量

不能修改诊断信息 SQLCODE 或 SQLSTATE 的值,也不能在它们上面设置变量修改断点。它们不同于一般的变量。
Breakpoints 视图
Breakpoints 视图显示已经为存储过程设置的所有断点。Breakpoints 视图提供标准的断点管理支持,包括:
启用/禁用断点
删除断点
导入/导出断点
Unified Debugger 支持两种断点:行断点和变量修改断点。在下图中,Breakpoints 视图显示这两种断点。

图 25. Breakpoints 视图

添加新断点:在编辑器中双击一行右边的空白边,就会在这一行上设置行断点。还可以右键单击编辑器的左边,然后使用出现的 Add Breakpoint 菜单设置行断点。

图 26. Add Breakpoint 菜单

如果在包含有效 SQL 过程执行语句的行上设置了断点,在调试期间调试器可以停在这一行上。某些源代码行和 SQL 过程语句不能设置断点,比如注释行或游标声明。另外,每个 SQL 过程语句只有一个为语句定义可中断点的关键字。一般情况下,有效的断点是 SQL 过程语句的第一个关键字。在为跨多个源代码行的语句设置断点时要小心。可以通过 Step Over 操作熟悉这些有效断点位置。

图 27. 行断点

可以在 Variables 视图中设置变量修改断点。在 Variables 视图中,右键单击一个变量并选择 Add Variable Change Breakpoint。调试期间,当变量值改变时,调试器会停在修改变量的行上。

图 28. 创建变量修改断点

Data Output 视图
Data Output 视图显示调试完成时过程的结果。结果与正常运行存储过程时的结果相同。它提供调试操作的状态信息、运行消息、参数值和运行结果。Data Output 视图有助于检查运行存储过程的结果。如果结果不符合预期,可以重新调试存储过程。
对于我们的示例存储过程,第二个商品(item 002)的利润是 11.00。利润值显示在 Data Output 视图的 Parameters 选项卡中的 OUT 模式参数 itemProfit 中。

图 29. Data Output 视图 - 调试操作的结果

还记得在 Run Settings 中如何设置运行后语句吗?运行后语句的执行结果也显示在 Data Output 视图中。如图 30 所示,Results 选项卡中列出了 PRODUCT 表的内容。表中 item 002 的利润值是 11.00。

图 30. Data Output 视图 – 运行后语句的执行结果

回页首
需要了解的其他问题
到目前为止,已经了解了如何为调试准备会话管理程序、如何创建存储过程、如何在启用调试选项的情况下部署它以及如何通过检查变量值和结果来调试它。本节讨论在 DB2 for z/OS 上进行调试时常常出现的一些情况。
无法找到会话管理程序
正如前面提到的,可以在客户机、服务器或网络上的其他地方设置会话管理程序。有时候,即使设置了会话管理程序,IBM Data Studio Developer 仍然报告会话管理程序不可用。
如果遇到这样的问题,而且您的会话管理程序在服务器或网络上的其他地方运行,那么可能是防火墙阻断了 TCP/IP 连接。另外,有时候是由于 IP 地址不正确。检查 TCP/IP 连接路径是否通畅的好方法是从服务器 ping 会话管理程序的 IP 地址。
超时问题
Unified Debugger 使用两个 超时设置。一个用于调试客户机;另一个用于会话管理程序。如果会话管理程序在指定的时间段内没有为调试会话服务,它就会关闭。要想再次使用会话管理程序,就必须重新启动它。调试客户机会释放一段时间内无活动的调试会话。一定要根据自己的需要调整这两个设置。
调试器菜单未启用
有时候,调试器菜单被禁用了。下面两种情况会导致这个问题:
首先,可能没有在启用调试选项的情况下部署存储过程。可以在编辑器中打开过程,然后检查是否选中了 Enable Debugging 复选框。
第二,数据库连接可能不支持调试器。正如前面提到的,对于在带 PTF UK03933 的 V8 上启动的 DB2 for z/OS,提供调试器支持。如果连接到 DB2 for z/OS V7,就无法在 Data Studio Developer V1.2 中调试存储过程。
结束语
IBM Data Studio Developer 为 SQL 存储过程提供调试特性,允许在 Eclipse 框架中按照与调试 Java 应用程序相似的方式进行调试。本文介绍了如何对 DB2 for z/OS 上的 SQL 存储过程进行调试,但是许多概念也适用于其他 DB2 服务器。
致谢
我们衷心感谢 Kathy Zeidenstein、Tina Chen 和其他审阅者为审阅本文提供帮助!

参考资料
学习
通过 RSS feed 请求本系列后续文章的通知。(了解关于 developerWorks 内容的 RSS feed 的更多信息) 。

通过 IBM Data Studio 产品专题,了解 Data Studio 产品和技术相关的资源。

查阅 IBM Data Studio 的 产品页面,了解这个产品能够给企业带来的好处。

Get Started with Data Studio Developer:这个教程概述了 Data Studio Developer。

I. JDeveloper和eclipse区别

Oracle 的JDeveloper

Oracle9i JDeveloper(定为9.0版,最新为10g)为构建具有J2EE功能,XML和Web
services的复杂的,多层的Java应用程序提供了一个完全集成的开发环境。它为运用Ora
cle9i数据库和应用服务器的开发人员提供特殊的功能和增强性能,除此以外,它也有资
格成为用于多种用途Java开发的一个强大的工具。

Oracle9i JDeveloper的主要特点如下:

① 具有UML(Unified Modeling Language,一体化建模语言)建模功能。可以将业
务对象及e-business应用模型化。

② 配备有高速Java调试器(Debuger)、内置Profiling工具、提高代码质量的工具
“CodeCoach”等。

③ 支持SOAP(Simple Object Access Protocol)“简单对象访问协议”、UDDI(U
niversal Description, Discovery and Integration)“统一描述、发现和集成协议”
、WSDL(Web Services Description Language)“WEB服务描述语言”等Web服务标准。

JDeveloper 不仅仅是很好的 Java 编程工具,而且是 Oracle Web 服务的延伸,支
持 Apache SOAP,以及 9iAS ,可扩充的环境和 XML 和 WSDL 语言紧密相关。Oracle9i
Jdeveloper完全利用Java编写,能够与以前的Oracle服务器软件以及其他厂商支持J2EE
的应用服务器产品相兼容,而且在设计时着重针对Oracle9i,能够无缝化跨平台之间的
应用开发,提供了业界第一个完整的、集成了J2EE和XML的开发环境,允许开发者快速开
发可以通过Web、无线设备及语音界面访问的Web服务和交易应用,以往只能通过将传统J
ava编程技巧与最新模块化方式结合到一个单一集成的开发环境中之后才能完成J2EE应用
开发生命周期管理的事实,从根本上得到改变。缺点就是对于初学者来说,较复杂,也
比较难。

Eclipse

Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美
元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(I
DE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境
(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中
集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显着改变了项目工作
流程,使开发者可以专注在实际的嵌入式目标上。

Eclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充
当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Jav
a类的描述。任何Eclipse插件定义的扩展点都能够被其它插件使用,反之,任何Eclipse
插件也可以遵从其它插件定义的扩展点。除了解由扩展点定义的接口外,插件不知道它
们通过扩展点提供的服务将如何被使用。

利用Eclipse,我们可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器
等)结合在一起。如果这些互相补充的独立工具采用Eclipse扩展点彼此连接,那么当我
们用调试器逐一检查应用时,UML对话框可以突出显示我们正在关注的器件。事实上,由
于Eclipse并不了解开发语言,所以无论Java语言调试器、C/C++调试器还是汇编调试器
都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。

Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于
微软公司的Visual Studio和Sun微系统公司的NetBeans平台。Eclipse为工具开发商提供
了更好的灵活性,使他们能更好地控制自己的软件技术。Eclipse联盟已经宣布将在2004
年中期发布其3.0版软件。这是一款非常受欢迎的java开发工具,这国内的用户越来越多
,实际上实用它java开发人员是最多的。缺点就是较复杂,对初学者来说,理解起来比
较困难。

使用就每个都使用,关键是你喜欢用那个