oracle、MySQL、SQLServer的⽐较
MySql的优点:
1 MYSQL⽀持5000万条记录的数据仓库(3.x版本就⽀持了)
2 MYSQL适应所有平台。
3 MYSQL是开源软件,开源的东西似乎总是⽐较实在⼀点,不会有太多商业化的考虑。
4 学起来简单
5 MYSQL 因为是开源的,所以⽀持任意修改,也就是说你可以去除你不需要的功能,从⽽简化MYSQL,提⾼速度。
6美国西部时间2006年2⽉4⽇,测试⼚商Coverity公司发表声明,称对MySQL数据库软件的源代码进⾏分析后,结果表明其缺陷数量远远⼩于商业数据库软件的⽔平。
7使⽤C和C++编写,并使⽤了多种编译器进⾏测试,保证源代码的可移植性
8⽀持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris
、Windows等多种操作系统
9为多种编程语⾔提供了API。这些编程语⾔包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
10⽀持多线程,充分利⽤CPU资源
11优化的SQL查询算法,有效地提⾼查询速度
12既能够作为⼀个单独的应⽤程序应⽤在客户端服务器⽹络环境中,也能够作为⼀个库⽽嵌⼊到其他的软件中提供多语⾔⽀持,常见的编码如中⽂的GB 2312、BIG5,⽇⽂的Shift_JIS等都可以⽤作数据表名和数据列名
13 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
14 提供⽤于管理、检查、优化数据库操作的管理⼯具
MySql的缺点:
1、MySQL最⼤的缺点是其安全系统,主要是复杂⽽⾮标准,另外只有到调⽤mysqladmin来重读⽤户权限时才发⽣改变。
2、MySQL的另⼀个主要的缺陷之⼀是缺乏标准的RI(Referential Integrity-RI)机制;Rl限制的缺乏(在给定字段域上的⼀种固定的范围限制)可以通过⼤量的数据类型来补偿。
3、MySQL没有⼀种存储过程(Stored Procedure)语⾔,这是对习惯于企业级数据库的程序员的最⼤限制。
4、MySQL不⽀持热备份。
5、MySQL的价格随平台和安装⽅式变化。Linux的MySQL如果由⽤户⾃⼰或系统管理员⽽不是第三⽅安装则是免费的,第三⽅案则必须付许可费。Unix或Linux⾃⾏安装免
费、Unix或Linux第三⽅安装200美元,需要⼀个应⽤组件200美元。
Mssql的优点:
Microsoft SQL Server 2000 能提供超⼤型系统所需的数据库服务。⼤型服务器可能有成千上万的⽤户同时连接到 SQL Server 2000 实
例。SQL Server 2000 为这些环境提供了全⾯的保护,具有防⽌问题发⽣的安全措施,例如,可以防⽌多个⽤户试图同时更新相同的数
据。SQL Server 2000 还在多个⽤户之间有效地分配可⽤资源,⽐如内存、⽹络带宽和磁盘 I/O。
超⼤型 Internet 站点可将其数据分开存放在多台服务器上,从⽽使处理负荷分散到多台计算机上,使站点能为成千上万的并发⽤户提供服务。
可以在⼀台计算机上运⾏多个 SQL Server 2000 实例。例如,⼀个为其它许多组织提供数据库服务的组织可为每个客户组织单独运⾏⼀个SQL Server 2000 实例,⽽全部实例可集中在⼀台计算机上。这样,既隔开了每个客户组织的数据,同时⼜使服务组织只需管理⼀台服务器计算机从⽽减少了费⽤。
SQL Server 2000 应⽤程序可在装有 SQL Server 2000 的计算机上运⾏。该应⽤程序通过 Windows 进程间通讯 (IPC) 组件(例如共享内存)⽽⾮通过⽹络连接到 SQL Server 2000。这使 SQL Server 2000 得以应⽤于应⽤程序必须在本地存储数据的⼩型系统中。
⼤型 Web 站点和企业级数据处理系统通常会⽣成⼤量的数据库处理,超出了⼀台计算机的⽀持能⼒。在这些⼤型系统中,数据库服务由组成数据库服务层的⼀组数据库服务器提供。SQL Server 2000 不⽀持采⽤平衡负荷的聚集形式建⽴数据库服务层,但⽀持跨⾃主服务器组分存数据的机制。尽管每个服务器需分开管理,但组内的各个服务器可共同分担数据库处理负荷。共享同⼀⼯作负荷的⼀组⾃主服务器称为服务器联合体。
⾼可⽤性
SQL Server 2005的失败转移集和数据库镜像技术确保企业向员⼯、客户和合作伙伴提交⾼度可靠和可⽤的应⽤系统。
管理⼯具
专业网站制作公司SQL Server 2005引进了⼀套集成的管理⼯具和管理应⽤编程接⼝(APIs),以提供易⽤性、可管理性、及对⼤型SQL Server配置的⽀持。安全性增强
SQL Server 2005旨在通过数据库加密、更加安全的默认设置、加强的密码政策和细化许可控制、及加强的安全模型等特性,为企业数据提供最⾼级别的安全性。
可伸缩性
SQL Server 2005可伸缩性的先进性包括表格分区、复制能⼒的增强和64位⽀持。
Mssql的缺点:
1.如果更改范围⼤到需要对输⼊存储过程的参数进⾏更改,或者要更改由其返回的数据,则您仍需要更新程序集中的代码以添加参数、更新GetValue() 调⽤,等等,这时候估计⽐较繁琐了。
2.可移植性差,由于存储过程将应⽤程序绑定到 SQL Server,因此使⽤存储过程封装业务逻辑将限制应⽤程序的可移植性。如果应⽤程序的可移植性在您的环境中⾮常重要,则将业务逻辑封装在不特定于 RDBMS 的中间层中可能是⼀个更佳的选择。
3.增加服务器负担
Oracle的优点:
1. oracle的优点很多,⽐如跨平台,这只是oracle众多优点之⼀,但这对客户来说是⾮常重要的⼀个优点。
2. ORACLE的可⽤性⾮常强,oracle的组件功能全
3. ORACLE体系先进,所以性能优异
4. Oracle Server是⼀个对象⼀关系数据库管理系统。它提供开放的、全⾯的、和集成的信息管理⽅法。每个Server由⼀个 Oracle DB和⼀个Oracle Server实例组成。它具有场地⾃治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯⼀的⼀个实例名SID,Oracle数据库服务器启动后,⼀般⾄少有以下⼏个⽤户:Internal,它不是⼀个真实的⽤户名,⽽是具
有SYSDBA优先级的Sys⽤户的别名,它由DBA⽤户使⽤来完成数据库的管理任务,包括启动和关闭数据库;Sys,它是⼀个 DBA⽤户名,具有最⼤的数据库操作权限;System,它也是⼀个 DBA⽤户名,权限仅次于 Sys⽤户。
客户端:
为数据库⽤户操作端,由应⽤、⼯具、SQL* NET组成,⽤户操作数据库时,必须连接到⼀服务器,该数据库称为本地数据库(Local DB)。在⽹络环境下其它服务器上的 DB称为远程数据库(Remote DB)。⽤户要存取远程 DB上的数据时,必须建⽴数据库链。
Oracle数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。composition和component的区别
5. 能在所有主流平台上运⾏(包括 windows)。完全⽀持所有的⼯业标准。采⽤完全开放策略。可以使客户选择最适合的解决⽅案。对开发商全⼒⽀持。
6. 平⾏服务器通过使⼀组结点共享同⼀簇中的⼯作来扩展windownt的能⼒,提供⾼可⽤性和⾼伸缩性的簇的解决⽅案。
如果windowsNT不能满⾜需要, ⽤户可以把数据库移到UNIX中。
7. 安全性获得最⾼认证级别的ISO标准认证。
8. 性能最⾼,保持windowsNT下的TPC-D和TPC-C的世界记录。
9. 多层次⽹络计算,⽀持多种⼯业标准,可以⽤ODBC,JDBC,OCI等⽹络客户连接
10. 长时间的开发经验,完全向下兼容。得到⼴泛的应⽤。完全没有风险。
Oracle的缺点:
1 操作性较复杂, 同时提供GUI和命令⾏,在windowsNT和unix下操作相同。
2 价格昂贵
MySql与Mssql的异同:
根本的区别是它们遵循的基本原则
⼆者所遵循的基本原则是它们的主要区别:开放vs保守。SQL服务器的狭隘的,保守的存储引擎与MySQL服务器的可扩展,开放的存储引擎绝然不同。虽然你可以使⽤SQL服务器的引擎,但MySQL能够提供更多种的选择,如MyISAM, Heap, InnoDB, and Berkeley
DB。MySQL不完全⽀持陌⽣的关键词,所以它⽐SQL服务器要少⼀些相关的数据库。同时,MySQL也缺乏⼀些存储程序的功能,⽐
如MyISAM引擎联⽀持交换功能。
发⾏费⽤:MySQL不全是免费,但很便宜
当提及发⾏的费⽤,这两个产品采⽤两种绝然不同的决策。对于SQL服务器,获取⼀个免费的开发费⽤最常的⽅式是购买微软的或者Visual Studio的费⽤。但是,如果你想⽤于商业产品的开发,你必须还要购买SQL Server Standard Edition。学校或⾮赢利的企业可以不考虑这⼀附加的费⽤。
性能:先进的MySQL
纯粹就性能⽽⾔,MySQL是相当出⾊的,因为它包含⼀个缺省桌⾯格式MyISAM。MyISAM 数据库与磁盘⾮常地兼容⽽不占⽤过多的和内存。MySQL可以运⾏于系统⽽不会发⽣冲突,在或类似UNIX系统上运⾏则更好。你还可以通过使⽤64位处理器来获取额外的⼀些性能。因为MySQL在内部⾥很多时候都使⽤64位的整数处理。Yahoo!商业⽹站就使⽤MySQL 作为后台数据库。
当提及软件的性能,SQL服务器的稳定性要⽐它的竞争对⼿强很多。但是,这些特性也要付出代价的。⽐如,必须增加额外复杂操作,磁盘存储,内存损耗等等。如果你的硬件和软件不能充分⽀持SQ
L服务器,我建议你最好选择其他如DBMS数据库,因为这样你会得到更好的结果。
安全功能
MySQL有⼀个⽤于改变数据的⼆进制⽇志。因为它是⼆进制,这⼀⽇志能够快速地从主机上复制数据到客户机上。即使服务器崩溃,这⼀⼆进制⽇志也会保持完整,⽽且复制的部分也不会受到损坏。
在SQL服务器中,你也可以记录SQL的有关查询,但这需要付出很⾼的代价。
安全性
这两个产品都有⾃⼰完整的安全机制。只要你遵循这些安全机制,⼀般程序都不会出现什么问题。这两者都使⽤缺省的IP端⼝,但是有时候很不幸,这些IP也会被⼀些⿊客闯⼊。当然,你也可以⾃⼰设置这些IP端⼝。
恢复性:先进的SQL服务器
恢复性也是MySQL的⼀个特点,这主要表现在MyISAM配置中。这种⽅式有它固有的缺⽋,如果你不慎损坏数据库,结果可能会导致所有的。然⽽,对于SQL服务器⽽⾔就表现得很稳键。SQL服务器能够时刻监测数据交换点并能够把数据库损坏的过程保存下来。
MySql与Oracle的异同:
和都⽀持%和_两个通配符,前者匹配任意个任意字符,后者匹配最多⼀个任意字符。但在处理本意字符%和_时,就很不相同了。mysql可以⽤转义字符\来处理;oracle也可以⽤转义字符来处理,但必须在LIKE表达式后⽤escape '\'来说明;其中\可以是任意⼀个字符(注意必须是⼀个字符)。
2、对象名的⼤⼩写敏感性
处理诸如表,,函数,索引,等对象时,Oracle对⼤⼩写不敏感;mysql则由来决定。如下是敏感的,是不敏感的。
3、查询表信息
mysql: show tables;scratch少儿编程启蒙教学
Oracle: select table_name from tabs;
4、⾃动增长类型的⽀持
mysql: 每⼀个表可以有⼀列⽤auto_increment,但必须⽤于主关键字。其起始值可以⽤AUTO_INCREMENT=500000作为表属性来约束,不能设步长,不能循环使⽤。
Oracle: ⽤ sequence对象来⽀持该类型。可以在触发器和SQL语句中⽤nextval,currval来取值;注意CURRVAL需要在同⼀SESSION⾥⽅能取值正确。
查询语句如SELECT val from dual。
创建语句如CREATE SEQUENCE SEQID_MAIN INCREMENT BY 1 START WITH 1 NOCYCLE CACHE 20 NOORDER;
5、限制记录数的⽀持
mysql: ⽤limit [start-index,]count⼦句来实现,⾮常简单,并且⽀持DELETE语法,应该对⽤户⾮常⽅便。
sprawlingmysql将时间戳转换成日期Oracle: 没有直接的⼦句可以提供⽀持。但近似可以⽤row_number函数来实现。
如 row_number() over (order by col1 desc,col2) as row,然后对row来进⾏过滤处理。如果没有排序⼦句则可以⽤更简单的rownum来实现。
6、连接操作符的⽀持
其实mysql和Oracle都⽀持左、右、内联操作。不过Oracle的语法如 a.id=b.id(+)来表⽰左联操作⽐较直观和容易构造。
7、null的处理
Oracle: nvl函数。
mysql: 默认上下⽂环境如‘’,0,UNDEF等。
8、字符联接
Oracle: ||(常⽤)
mysql: concat
9、⽇期型的转换
mysql: DateFormat,默认⽀持的各种格式(基于当前区域设置)。
Oracle: to_date/to_char
10、注释⾏的开头字符
mysql: #
Oracle: -
11、外表关联⽀持
mysql: 4.0版本后创建InnoDB类型的表。
Oracle: 现在的差不多都⽀持,很⽼的就不知道了,等等。
Mssql与Oracle的异同:
体系结构
Microsoft按照客户/服务器体系结构的分布进⾏操作。这种⽅法产⽣不必要的代价和复杂性。在Internet中,Oracle已经发现了⼀个较好的答案。在 Internet Computing的多层(multi-tiered)体系结构中,集中(centralization)可以简化应⽤的部署和维护,数据的管理和备份,并向客户提供了⾼级的性能、安全性与可靠性——结果使总的操作成本更低。Oracle具有使所有数据和⽂档存储在少数⼏个⾼性能数据库的能⼒,这种能⼒使客户可以集中管理他们所有的数据,并且管理和访问更加容易、可靠且价格更加便宜。
开放(openness)
SQL Server只在Windows上运⾏,MicroSoft这种专有策略的⽬标是将客户锁定到Windows环境中,限制客户通过选择⼀个开放的基于标准的解决⽅案来获取⾰新和价格竞争带来的好处。此外,⼈们也都知道,Windows本⾝的可靠性、安全性和可伸缩性也是有限的。Oracle能在所有主要的平台(其中包括Windows)上运⾏,并且完全⽀持所有的⼯业标准,所以,客户可以利⽤很多种第三⽅应⽤程序、⼯具、⽹关和管理实⽤程序。Oracle采⽤开放策略,它使得客户可以选择⼀种最适合他们特定需要的解决⽅案。利⽤ Oracle8i,操作系统实质上将变得⽆关紧要。Oracle8i的Internet⽂件系统(iFS)是⼀种突破,这种突破性给所有数据类型提供了⼀种易于使⽤的数据管理接⼝,这样减少了客户对Windows之类的专⽤操作系统的依赖。
可伸缩性
由于SQLServer7.0的并⾏实施和共存模型并不成熟,这使得⼈们更加关⼼该产品处理⽇益增多的⽤户数和数据卷(volumes)的能
⼒。Oracle在下列两个⽅⾯提供了⼀个优越的可伸缩性:
簇:Oracle并⾏服务器通过使⼀组节点共享同⼀簇中的⼯作负载来扩展Windows NT的能⼒,Oracle
提供具有⾼可⽤性和⾼伸缩性的簇解决⽅案,⽽Microsoft只提供克服错误的簇。根据Gartner Group的⼀份报告(10/97),Microsoft在2001年以前将不会有⼀个可伸缩的簇解决⽅案。 Oracle⾃从1997年以来就已经有这种能⼒。
伸缩到其他操作系统:因为Oracle是⼀个开放的解决⽅案,客户可以从他们的系统移到Unix或另⼀个操作系统,当Windows NT不能满⾜他们的需要。SQL Server与单个平台的结合意味着,当⼀个客户达到 Windows NT的限制时,除了放弃他们的系统并移到⼀个新平台上的⼀个新数据库以外——⼀个最能节省时间和⾦钱的建议,他们再也没有其他选择。
安全性
由于Internet的出现⽽带来的全球数据访问也同时增加了潜在的安全危险。对于数据库的安全要求决不会⽐以前更⾼,⽽SQL
Server7.0还没有获得任何类型的安全证书。相⽐之下,Oracle是唯⼀获得最⾼认证级别的ISO标准认证的数据库。Oracle⾼级的安全特性考虑了强制实施的细⼩权限,先进的审查,增强的访问控制,安全的分布是处理与复制,以及使⽤附加的外部签发机制的能⼒。SQL Server7.0没有这些特性。利⽤Oracle产品,企业可以将真正集成的安全机制廉价地迁⼊到业务系统中。
可扩展性
今天的Internet是⼀个令⼈激动的新世界,它具有鲜明的图像,实时的视频点播,⾼保真的语⾳和声⾳,以及诸如数据趋势和地理编码之类的复杂信息。通过集中管理⽂本、图像、⾳频、视频和地理信息,Oracle8i的interMedia使客户能够利⽤Web的多媒体特性。相⽐之下,Microsoft SQL Server 7.0对⾮传统的数据类型缺乏内置的⽀持。作为⼀种替代的策略,Microsoft提倡将⾮传统的数据存储到单独的服务器⾥的平⾯(flat)⽂件中,然后使⽤OLE-DB将它们链接在⼀起。使⽤这种策略,集成在Web中发现的各种数据类型,将会产⽣复杂的、不安全的、维护量⼤的数据包(mess),这种数据包缺乏事物的完整性。
性能
低性能可能是很致命的 (fatal),因为雇员的⽣产能⼒被阻碍,客户由于过多的等待时间⽽丢失。根据事物处理委员会(TPC)审查的标准与结果,Oracle提供了⽐ SQL Server7.0更⾼级的性能。到1998年11⽉为⽌,Oracle⼀直是Windows NT中TPC-D和TPC-C标准的世界记录保持者。实际上,Oracle的NT TPC-C结果⼏乎⽐Microsoft的快两倍。Microsoft 从来没有宣布⼀个TPC-D结果,这就意味着尽管SQL Server7.0中有假定的环境,但它仍然不适合于数据仓库应⽤。Oracle也保持了SAP,Baan和Peoplesoft标准的世界记录。通过⼀贯地演⽰正式标准与实际情况之间的性能关系,Oracle已被证明,它可以处理最紧迫的数据仓库和OLTP应⽤的⼯作负载要求。
操作简单
使数据库易于安装、使⽤和管理——组合在⼀起称为“操作简单“——是⼀个减少成本的关键因素。尽管Microsoft产品具有易于使⽤的美誉,但 SQL Server7.0缺乏数据库管理的特性,⽽这种特性是复杂的数据库系统所必须的。例如,对于SQL Server6.5和 SQL
Server7.0,Microsoft需要使⽤单独的管理⼯具。为了易于安装,Oracle使⽤了⼀个基于Java的实⽤程序,该实⽤程序提供了安装和运⾏⼀个
预调整和预配置的Oracle8i数据库所需要的⼀切内容。“操作简单“的最重要部分是易管理性, Oracle Enterprise Manager(企业管理器)提供⼀个集成的管理控制台来集中管理多个服务器。客户也可以单独购买所有三个或其中任何⼀个可选的管理包,这些管理包提供了⾼级的功能来调整和诊断数据库,管理数据库环境的复杂变化。
⾰新
PC Week已经说过,“SQL Server7.0并没有向客户提供其竞争对⼿尚未提供的任何新东西。”根据Information Week(9/14/98),“即使在的市场中:Windows NT环境,SQL Server7仍然不是OLTP数据库竞争者的对⼿。”在SQL Server7.0中,许多关键任务数据库应⽤所必需的功能(⾼可⽤性/可伸缩性、安全、性能等)仍然没有。Microsoft现在正在努⼒地追赶Oracle⼜⼀个领先的传统,新发布的Oracle8i也不例外。通过诸如iFS、数据库Java、WebDB、interMedia和WebToGo之类的⾰新, Oracl
e带头使各个公司获得Internet计算的好处。特别
在Windows NT中,由于Oracle是第⼀个发布NT数据库簇解决⽅案的⼚商,第⼀次⽀持超过⼤内存(VLM),第⼀次将⾼可⽤性和可伸缩性带到安装有Oacle并⾏服务器的NT中,所以Oracle在扩展NT能⼒⽅⾯已经成为⼀个明确的领导者。
技术风险
SQL Server7.0是⼀个完全重写的产品版本。该产品经历了联系的延迟,并且具有⾮常长的beta测试周期,这通常代表开发问题。⼀
份Gartner报告(8/98)说,“引擎的重新设计时⾮常深的...我们建议在1999年中期以前,不要将该产品部署在规模⽐较⼤的产品应⽤中。”正如⼀份Giga报告(3/98)所说的那样,“SQL Server仍有许多需要证明。可伸缩性、可靠性、多⽤户的性能、簇的开发、对象特性的⽀持等都有问题。”⼀个特别危险的因素是重新加在数据库问题。由于基本的数据结构发⽣变化,Microsoft将要求所有 SQL Server6.0和6.5站点必须先卸载然后重新加载数据,这个过程需要好⼏天的时间。Microsoft已经承认6.5和7.0之间存在后向兼容问题。利⽤SQL Server7.0,许多以前存在的基本的6.5代码将必须重写,以便利⽤象⾏级锁定和分布联合之类的新特性。公司在使它们的⽣产率和信息冒风险时必须⾮常谨慎。利⽤Oracle没有任何风险。Oracle8已经发布⼀年多了,并被部署在成百上千个⽤户站点上。在500家财团公司中,
将近90%的公司使
⽤Oracle产品和服务器。
⼚商风险
Microsoft的核⼼能⼒是在桌⾯和操作系统软件的开发,该公司在企业级数据管理没有什么经验。从技术和业务来看, Microsoft只在最近才进⼊数据管理领域,到⽬前为⽌还没有获得信任。 Microsoft的成功是由于依靠客户软件的连续废弃与升级,以及硬件和操作系统尽可能的传播。在企业范围内若要获得成功,则要求⾼效利⽤已有的数据资源,并合并服务器资源。在另⼀个⽅⾯,Oracle已有⼆⼗多年的向客户解决⽅案的经验。⼀个公司的数据是它们最有价值的资产,Microsoft不能指望涌进这个市场,然后⼀夜之间获得信任。Oracle已经花费了⼏年的艰苦努⼒才赢得其客户的信任以及它⽬前享受到的荣誉。每天成千上万的客户在Oracle上运⾏它们的业务所获得的成功就是Oracle技术和业务模型完美的有利证明。
总结
SQL Server7.0已⽐原来的计划⼏乎晚两年发⾏。在这段时间内,有关哪个⼚商具有 Windows NT上最好的数据库解决⽅案的战⽃已经打响,并最终由Oracle获胜。⾃从1996年以来,Oracle⼀直是Wind
ows NT上的市场领导者。在过去的四年⾥,Oracle已在NT上享有令⼈震惊的2000%的增长。在这期间,Microsoft的收⼊占NT市场的份额实际上已经减少了27.8%。Oracle的伙伴的巨⼤成功补充了Oracle的客户的成功。⼀份最近的ARM研究(1998)表明,在1997年的EPT市场中,数据库营业收⼊的52%进⼊Oracle,相⽐之下, Microsoft SQL Server只占5%。事实上,在ASP的3200个NT安装中,70%是在Oracle上。只有20%是在 SQL Server上。随着它们最新的数据库升
mysql是什么系统级,Microsoft达到了Oracle在⼗年前通过Oracle6达到的⽔平。 SQL Server7.0仍然⽐Oracle8i落后⼏年,并且在可伸缩性、体系结构、功能、安全性、扩展性等⽅⾯存在严重问题,这将阻碍它在关键任务应⽤中的使⽤。客户对选择SQL Server7.0将持严重的保留态度,特别是在Oraclr8i这样⾼可靠和先进的产品已经存在的时候。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论