社区
疑难问题
帖子详情
ms-sql server在删除数据怎样不写日志?
langtian
2003-01-11 10:59:21
ms-sql server在删除数据怎样不写日志?
...全文
540
5
打赏
收藏
ms-sql server在删除数据怎样不写日志?
ms-sql server在删除数据怎样不写日志?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lizongqi
2003-01-11
打赏
举报
回复
嘻嘻
pengdali
2003-01-11
打赏
举报
回复
TRUNCATE TABLE 表名
CoolAbu
2003-01-11
打赏
举报
回复
用truncate table tablename删除数据时,不记入日志。
pengdali
2003-01-11
打赏
举报
回复
TRUNCATE TABLE
删除表中的所有行,而不记录单个行删除操作。
语法
TRUNCATE TABLE name
参数
name
是要截断的表的名称或要删除其全部行的表的名称。
注释
TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。
对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。
TRUNCATE TABLE 不能用于参与了索引视图的表。
示例
下例删除 authors 表中的所有数据。
TRUNCATE TABLE authors
权限
TRUNCATE TABLE 权限默认授予表所有者、sysadmin 固定服务器角色成员、db_owner 和 db_ddladmin 固定数据库角色成员且不可转让。
langtian
2003-01-11
打赏
举报
回复
呵呵,谢谢各位的热心回答;
但是我的意思是带where条件的删除。
MS
SQL
Server
绿色版 v3.0
MS
Sql
Server
绿色版 V3.0 说明---------- 首先感谢各位朋友在制作过程中的支持和热心帮助,没有你们的支持,我是不会做完 3.0 版本的。 其次还是那句老话,版权是人家 M$(微软) 的。★ 本版本修改如下:1 重新写了进程管理器 1 自定义实例名 2 自定义端口 3 查看
日志
2 允许多
SQL
同时运行(更换实例名、端口)3 给
Sql
servr.exe 增加了个 -P 参数,可设置端口。4 无需导注册表。(^_~ 偷偷的笑)5 由于修改了
Sql
servr.exe ,增加了 AutoReg.dll ,如果大家不相信本人人品请不要使用,或者替换回原来的 EXE,但是将失去除查看
日志
的所有功能。6 由于在企业版里提取,XP 、2000 以下版本不能运行7 请注意
sql
连接地址应该为 IP实例名 ,默认密码为 sm
sql
,具体请见 Adolink.udl---------- QQ:3860040 Mail:szq993@163.com 黑龙江 七台河 Asui 谁要写程序的网络兼职本人非常欢迎。
绿色
Sql
Server
原理及全新管理工具
几天前在盒子看到绿色
Sql
server
很高兴,现将本人对绿色
SQL
Server
的现实思路作一说明,不正确的地方还请指教。1.
Sql
servr.exe 运行参数。
Sql
Server
的启动可以为Windows服务方式(默认),也可以以应用程序方式启动。下面介绍
sql
servr.exe以应用程序方式启动时的参数问题。
sql
servr 应用程序用法:
sql
servr [-sinstance_name] [-c] [-dmaster_path] [-f] [-eerror_log_path] [-lmaster_log_path] [-m] [-n] [-Ttrace#] [-v] [-x] [-g number] [-O] [-y number]-sinstance_name 指定要连接到的
SQL
Server
实例。如果未指定命名实例,
sql
servr 将启动
SQL
Server
默认实例。重要 启动
SQL
Server
实例时,必须从实例所在的适当目录使用
sql
servr 应用程序。对于默认实例,从 MS
SQL
Binn 目录运行
sql
servr。对于命名实例,在 MS
SQL
$instance_nameBinn 目录运行
sql
servr。-c 表示以独立于 Windows NT 服务控制管理器的方式启动
SQL
Server
实例。当从命令提示符下启动
SQL
Server
时,可使用该选项缩短启动
SQL
Server
的时间。(注意:当使用该选项时,无法通过使用
SQL
Server
服务管理器或 net stop 命令停止
SQL
Server
,而且如果已从 Microsoft Windows NT? 系统注销,则
SQL
Server
将停止运行。)-dmaster_path指出 master
数据
库文件的完全合法路径。在 -d 和 master_path 之间没有空格。-f以最小配置模式启动服务器。然后,系统管理员可对配置选项重新配置(使用 sp_configure 系统存储过程)。-eerror_log_path表示错误
日志
文件的完全合法路径。如果未指定路径,则默认实例的默认位置是 x:Program FilesMicrosoft
SQL
Server
MS
SQL
LogErrorlog,命名实例的默认位置是 x:Program FilesMicrosoft
SQL
Server
MS
SQL
$instance_nameLogErrorlog。在 -e 和 error_log_path 之间没有空格。-lmaster_log_path指示 master
数据
库事务
日志
文件的完全合法路径。在 -l 和 master_log_path 之间没有空格。-m表示在单用户模式下启动
SQL
Server
实例。如果
SQL
Server
是以单用户模式启动的,则只能连接一个用户。CHECKPOINT 机制(它确保完成的事务定期从磁盘高速缓存写入
数据
库设备中)将不启动。(一般情况下,如果您遇到需要修复的系统
数据
库问题时,可使用此选项。)-n表示您不想使用 Windows NT 应用程序
日志
来记录
SQL
Server
事件。如果用 -n 选项启动
SQL
Server
实例,则最好也使用 -e 选项,否则将不会记录
SQL
Server
事件。-Ttrace#表示应使用指定的有效跟踪标记 (trace#) 来启动
SQL
Server
实例。跟踪标志用来启动具有非标准行为的服务器。有关可用跟踪标记 (trace#) 的更多信息,请参见跟踪标记。重要 当指定跟踪标志时,请使用 –T 来传递跟踪标志号。
SQL
Server
接受小写字母 t (-t);然而,-t 还设置
SQL
Server
支持工程师所需的其它内部跟踪标记。-v显示服务器的版本号。-x禁用维护 CPU 统计。-g memory_to_reserve指定内存的兆字节整数,该内存被保留下来用于
SQL
Server
2000 内部(进程内)运行的其它应用程序。-O指定不需要分布式 COM (DCOM),从而禁用异类查询。-y error_number如果
SQL
Server
2000 遇到在该选项中指定的错误信息,它将把表象堆栈跟踪写入错误
日志
。可以使用多个 –y 参数指定多个错误。2. 系统
数据
库路径问题. 一般情况下,正常安装
sql
server
之后,master等系统
数据
库的路径都是被设置为绝对路径,如果要改正
数据
库的路径为相对路径,可以使用以下
SQl
语句:
sql
:=format(' update sysaltfiles set filename='%s' where filename='%s' ', ['...data'+extractfilename(MDFFile),MDFFile]); ADOQuery1.Close; ADOQuery1.
SQL
.Text:=
sql
; ADOQuery1.Exec
SQL
;
sql
:=format(' update sysaltfiles set filename='%s' where filename='%s' ', ['...data'+extractfilename(LogFile),LogFile]); ADOQuery1.Close; ADOQuery1.
SQL
.Text:=
sql
; ADOQuery1.Exec
SQL
;
sql
:=Format('update sysdatabases set filename='%s' where name='%s'', ['...data'+extractfilename(MDFFile),Edit1.text]); ADOQuery1.Close; ADOQuery1.
SQL
.Text:=
sql
; ADOQuery1.Exec
SQL
;大家打开sysaltfiles 表和sysdatabases 一看就知道了,不多说了。除了系统
数据
库,其它的
数据
库也可以使用这种方法修改为相对路径。 使用相对路径的好处是可以让你的绿色
Sql
server
随时copy到任意目录或是任意其它机器上启动,并且原来的
数据
库全部可以使用,如果是绝对路径到了其它机器就不行了。3. 注册表问题: 大家可以看下面的注册表文件Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$name][HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
]"AuditLevel"=dword:00000000"DefaultLogin"="guest""ListenOn"=hex(7):53,00,53,00,4d,00,53,00,53,00,48,00,37,00,30,00,00,00,53,00, 53,00,4e,00,45,00,54,00,4c,00,49,00,42,00,00,00,00,00"LoginMode"=dword:00000000"Map_"="""Map#"="-""Map$"="""SetHostName"=dword:00000000"Tapeloadwaittime"=dword:ffffffff"uptime_pid"=dword:00001044"uptime_time_utc"=hex:26,57,c8,b3,fb,bb,c5,01[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
CurrentVersion]"CurrentVersion"="8.00.194""RegisteredOwner"="""SerialNumber"="""CSDVersionNumber"=dword:00000300"CSDVersion"="8.00.761""Language"=dword:00000804"checksum"=hex:37,35,32,32,63,31,35,38,61,65,37,64,34,63,64,37,35,30,64,61,30, 33,34,62,37,64,63,32,30,61,36,36,39,37,62,34,61,35,65,36,63,66,62,61,38,37, 39,36,37,31,66,33,39,61,36,65,35,64,30,33,37,36,37,65,64,36,33,30,61,39,63, 36,66,37,36,30,35,65,32,66,34,66,31,33,63,39,33,63,34,66,62,66,34,66,64,38, 64,65,36,64,35,34,37,33,35,39,35,32,36,63,61,32,36,63,33,32,64,34,36,33,65, 36,39,34,30,65,61,37,64,35,30,61,66,34,64,32,66,38,37,36,30,61,39,64,30,61, 32,36,64,65,66,66,00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
Parameters][HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
SuperSocketNetLib]"ProtocolList"=hex(7):74,00,63,00,70,00,00,00,6e,00,70,00,00,00,00,00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
SuperSocketNetLibNp]"PipeName"="\.pipeMS
SQL
$$name
sql
query"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameMS
SQL
Server
SuperSocketNetLibTcp]"TcpHideFlag"=dword:00000000"TcpDynamicPorts"="$port""TcpPort"="$port"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
SQL
Server
$nameSetup]"FeatureName"="
Sql
Run""FirstStart"=dword:00000000"ProductCode"="{E09B48B5-E141-427A-AB0C-D3605127224A}""
SQL
DataRoot"="$path""
SQL
Path"="$path"这是注册一个
Sql
Server
实例所要使用的注册表,把里面的$name,$path,$port替换成你定义的实例名,当前程序所有路径,监听端口,然后导入注册表就可以了。4. 启动
Sql
Server
iPath:=ExtractFilePath(Application.ExeName); CommandLine:=PChar(iPath+'binn
sql
servr.exe -d...datamaster.mdf -l...datamastlog.ldf -e...Loglog.txt+Edit1.Text); CreateProcess( nil, CommandLine, nil, nil, true, CREATE_NO_WINDOW, nil, PChar(iPath+'binn'), StartupInfo, ProcessInformation )也可以直接写个.bat运行就ok了.5. 启动
日志
问题。 这个问题最简单,因为在执行
sql
servr.exe时指定的有log文件,你只用用个定时器(50ms)读文件,就可以在程序中显示出来启动
日志
了,呵呵,这只是个思想,具体的自已想办法吧. 6. 停止服务 用CreateProcess可以得到进程ID,TerminateProcess就关了
sql
server
进程,服务就停了,简单吧。根据上面的6个步骤,你就可以自已搞定一个绿色的
Sql
Server
了.并且你可以根据不同的
sql
server
版本,整理出所有版本的绿色
sql
server
。绿色
sql
server
企业版绿色
sql
server
个人版绿色 MSDE... ...这样以后遇到什么操作系统都全部搞定。 最后说一句,只要你能把几个
Sql
server
版本的
数据
整理好(主要是系统
数据
库的路径问题(好像现在盒子已经有绿色企业版的文件了),DLL全部copy就OK了),都可以使用我的管理工具进行管理,呵呵,当然你也可以作出自已的管理器。我的管理器,主要是为了我自已用,大家如果用着可以,请多提意见。由于
sql
server
数据
太大,并且盒子上已经有了,这次只上传了exe和目录结构。不知道说的是否正确,如果还有什么问题,我们一起交流. Email: 11826088@163.com
sql
语句优化之
SQL
Server
(详细整理)
MS
SQL
Server
查询优化方法 查询速度慢的原因很多,常见如下几种 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的
数据
量过大(可以采用多次查询,其他的方法降低
数据
量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。 9、返回了不必要的行和列 10、查询语句不好,没有优化 可以通过如下方法来优化查询 1、把
数据
、
日志
、索引放到不同的I/O
EasyPlat.Net快速开发平台源码 v4.5
EasyPlat.Net提供基于DATASET的三层结构,可以通过直接使用Biz
SQL
进行两层开发。包含账号、角色、权限,菜单管理;导入、导出、打印、加密等方法;公共字典、XML字典使用;多种打印、导入导出、图表支持,
日志
记录等。用户可以在此基础上7天之内完成快速开发企业实用的系统, 一行代码插入
数据
,一行代码更新
数据
等不用写大部分代码。(Winxp/Win7+MS
SQL
2005/2008+VS2010+.NetFramework4+C#)。注意:开发环境为Visual Studio 2010,
数据
库为
SQL
Server
2005,
数据
库文件在DB_51aspx文件夹中附加就行。默认管理员登录名密码为:51aspx 51aspx更新历史2013-10-18增加订单、报价单类型的子表明细表操作支持GUID插入增加测试
数据
修改空
数据
库时,超级用户登录之后,无法增加员工信息
net系统错误记录工具 Elmah
十分方便的一个asp.net的
日志
管理dll。无需写代码,只要配置一下就可以。 是一款ASP.NET下的系统错误记录管理工具,它可以非常方便的把“黄屏”错误记录到XML,MS
SQL
Server
,
SQL
ite,My
Sql
等文件中,甚至它还可以发送邮件。 这里我写了简单的配置过程:http://blog.csdn.net/jiafulc/article/details/7057594
疑难问题
22,209
社区成员
121,730
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章