仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 831|回复: 7
打印 上一主题 下一主题

[学习教程] MSSQL网页编程之insert into tablename与Select * into...

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:39:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Merge将一定数量的MyISAM表联合而成一个整体,在超大规模数据存储时很有用select|对照
insertintotablename时表tablename必需存在
select*intotablename时表不克不及存在

在数据库的妨碍复原模子为“复杂”的时分,select*intotablename要快,由于在数据库的妨碍复原模子为“复杂”的时分select*intotablename是不会发生大批日记的


--测试:
--条件前提是数据库的妨碍复原模子为“复杂”

--1、用selectinto天生年夜数据量的表你能够在语句运转之前检察你的ldf文件(log)
--然后在运转以后再检察,log增加很小,而建表的速率对照快
ifexists(select*fromdbo.sysobjectswhereid=object_id(N[tb_pwd3])andOBJECTPROPERTY(id,NIsUserTable)=1)
droptable[tb_pwd3]
GO
--天生一时表
selecttop256seq_no=identity(int,0,1)into#tfromsyscolumns
--天生暗码3位字典表内容
selectpwd=char(a.seq_no)+char(b.seq_no)+char(c.seq_no)intotb_pwd3from#ta,#tb,#tc
go

droptable#t

--这两种情形你要分隔测试,测试第2种情形的时分你要包管你的磁盘有充足的空间,磁盘的格局要ntfs格局才行


--2、用insertinto天生年夜数据量的表你能够在语句运转之前检察你的ldf文件(log)
--然后在运转以后再检察,log增加很快,而建表的速率也慢,要写log呀
ifexists(select*fromdbo.sysobjectswhereid=object_id(N[tb_pwd3])andOBJECTPROPERTY(id,NIsUserTable)=1)
droptable[tb_pwd3]
GO
createtabletb_pwd3(
pwdchar(3)
)
go
--天生一时表
selecttop256seq_no=identity(int,0,1)into#tfromsyscolumns
--天生暗码3位字典表内容
insertintotb_pwd3selectpwd=char(a.seq_no)+char(b.seq_no)+char(c.seq_no)from#ta,#tb,#tc
go

droptable#t

附:sqlserver2000复原模子的申明
SQLServer2000为我们供应了三种数据库恢复模子:simple(复杂恢复),full(完整恢复),bulk_logged(年夜容量日记纪录恢复)。
复杂恢复模子最简单操纵,但它是最缺少天真性的劫难恢复战略。选择复杂恢复模子同等于把trunc.logonchkpt.设置成true。在这类恢复模子下,我们只能举行完整备份和差别备份(differentialbackup):这是由于事件日记老是被截断,事件日记备份不成用。一样平常地,关于一个包括关头性数据的体系,我们不该该选择复杂恢复模子,由于它不克不及够匡助我们把体系复原到妨碍点。利用这类恢复模子时,我们最多只能把体系恢复到最初一次乐成举行完整备份和差别备份的形态。举行恢复时,我们起首要恢复最初一次乐成举行的完整备份,然后在此基本上恢复差别备份(差别备份只能把自从数据库最初一次完整备份以后对数据库的修改施加到数据库上)。
完整恢复模子把trunc.logonchkpt.选项和SelectInto/BulkCopy选项都设置成false。完整恢复具有把数据库恢复到妨碍点或特定立即点的才能。关于回护那些包括关头性数据的情况来讲,这类模子很幻想,但它进步了设备和办理的价值,由于假如数据库会见对照频仍的话,体系将很快发生复杂的事件日记纪录。因为在这类模子中SelectInto/BulkCopy设置成了false,SQLServer将纪录包含年夜容量数据装进在内的一切事务。
最初一种恢复模子是年夜容量日记纪录恢复,它把trunc.logonchkpt.设置成false,把SelectInto/BulkCopy设置成true。在年夜容量日记纪录恢复模子中,年夜容量复制操纵的数据丧失水平要比完整恢复模子严峻。完整恢复模子纪录年夜容量复制操纵的完全日记,但在年夜容量日记纪录恢复模子下,SQLServer只纪录这些操纵的最小日记,并且没法逐一把持这些操纵。在年夜容量日记纪录恢复模子中,数据文件破坏大概招致请求手工重唱工作。下表对照了三种恢复模子的特性。恢复模子长处事情丧失体现可否恢复到立即点?
复杂同意高功能年夜容量复制操纵。
发出日记空间,使无暇间请求最小。必需重做自最新的数据库或差别备份后所产生的变动。能够恢复就任何备份的开头处。随后必需重做变动。
完整数据文件丧失或破坏不会招致事情丧失。
能够恢复就任意立即点(比方,使用程序或用户毛病之前)。一般情形下没有。
假如日记破坏,则必需重做自最新的日记备份后所产生的变动。能够恢复就任何立即点。
年夜容量日记纪录同意高功能年夜容量复制操纵。
年夜容量操纵利用起码的日记空间。假如日记破坏,大概自最新的日记备份后产生了年夜容量操纵,则必需重做自前次备份后所做的变动。不然不丧失任何事情。能够恢复就任何备份的开头处。随后必需重做变动。

在数据库的Options选项卡中,我们能够从Model下拉列表框选择Simple把恢复模子改成复杂模子。别的,Microsoft扩大了ALTERDATABASE命令,我们能够用它设置数据库属性。比方,用上面这个T-SQL命令能够把恢复模子设置为完整恢复模子:ALTERDATABASENorthwindSETRECOVERYFULL


MySQL这个名字是怎么来的已经不清楚了。基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQLAB创始人之一的的女儿也叫My。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-19 20:54:07 | 只看该作者
外键的级联更能扩展可能大部分的同行在设计OLTP系统的时候都不愿意建立外键,都是通过程序来控制父子数据的完整性。
分手快乐 该用户已被删除
板凳
发表于 2015-1-27 08:22:38 来自手机 | 只看该作者
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
只想知道 该用户已被删除
地板
发表于 2015-2-5 04:47:04 | 只看该作者
同样会为索引视图等应用带来麻烦。看看行级和事务级的快照数据放在tempdb中,就能感觉到目前架构的尴尬。
乐观 该用户已被删除
5#
发表于 2015-2-11 05:22:19 | 只看该作者
再开发调试阶段和OLAP环境中,外键是可以建立的。新版本中加入了SETNULL和SETDEFAULT属性,能够提供能好的级联设置。
小女巫 该用户已被删除
6#
发表于 2015-3-1 21:41:14 | 只看该作者
但是随着数据量的增大,这种成本差距会逐渐减小,趋于相等。(500万数量级只相差10%左右)
活着的死人 该用户已被删除
7#
发表于 2015-3-17 17:08:24 | 只看该作者
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
若相依 该用户已被删除
8#
发表于 2015-3-24 13:39:06 | 只看该作者
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 18:08

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表