Sybase复制表结构和其他主流数据库的区别

Sybase复制表结构相信大家都比较熟悉了,下面就将对Sybase复制表结构和其他数据库系统的复制表结构方法进行比较,供您参考。

专注于为中小企业提供做网站、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业建湖免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

因为数据库SQL语句在各大产品中带有“方言性”,即SQLSERVER SYBASE都是用了T-SQL,Mysql是用的标准SQL,Oracle有有自己的PL/SQL。由于这种“方言性”的差异导致很多SQL语句在移植的时候产生困难,在异构数据库的时候显得很尴尬。当然对于DBA来说,无非是查查语法而已的事。但是终究是不方便。这里就跟大家分享下我自己实验整理的,复制表结构即数据的各数据库中的语法分析。

先来说说SQLSERVER大家最熟悉的。

--当数据库中没有新表的情况,比如有了A,没有B表。

select * into B from A --复制表及数据

select * into B from A where 1>1 --只复制表结构

--当数据中已经有了B表的情况,上面就不适用了。

insert into B select * from A --复制表数据,为了避免。B表理论上应该没有数据,如果有,可能会造成违反主键。

insert into B select * from A where id>10 --加上where条件可以指定复制数据,上面没有表的情况也可以这样做。

这里要说的是,sybase和SQLSERVER是一样的。因为从某种角度来说,SYBASE就是SQL的原型。

接下来是Mysql。稍微语法有不同。

--数据库中没有B表的情况

create table B select * from A

create table B select * from A where 1<>1 --只复制表结构

--有B表的情况和sqlserver基本相同

insert into B select * from A

oracle 基本上合MYSQL是一样的,不过语法要求更严谨。当然Mysql也可以这样写。

--数据库中没有B表的情况

create table B as select * from A

create table B as select * from A where 1<>1 --只复制表结构

create table B like A--复制表结构

--有B表的情况基本相同

insert into B select * from A

这些都是较为初级的SQL语句,但是也比较适用,以后会分析一些其他的常用SQL语句。

网页标题:Sybase复制表结构和其他主流数据库的区别
标题URL:http://www.shufengxianlan.com/qtweb/news22/484722.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联