SQL
iteye_18218
这个作者很懒,什么都没留下…
展开
-
SQL判断数据库、表、存储过程、视图、函数是否存在
--判断数据库是否存在if exists(select * from master..sysdatabases where name=N'库名')print 'exists'elseprint 'not exists'----------------- 判断要创建的表名是否存在if exists (select * from dbo.sysobjects where i...原创 2010-09-06 19:14:33 · 75 阅读 · 0 评论 -
因为文件组primary已满,未能为数据库XX对象XX分配空间
1.检查你的磁盘剩余空间是否足够,如果没有磁盘剩余空间,则清理磁盘,腾出空间 2.检查你的磁盘分区格式 如果是FAT16,则数据文件最大只能是2G 如果是FAT32,则数据文件最大只能是4G 改为NTFS分区则没有这种限制 3.检查一下你有没有限制数据库文件的大小 企业管理器--右键你的数据库--属性--文件增长限制--如果有限制大小,取消限制 4.检查你的SQL版本,如果你用MSDE,则限制...原创 2011-02-18 17:10:02 · 810 阅读 · 0 评论 -
net use 发生系统错误67,找不到网络名
局域网中有两台电脑 A为windows server 2003 B为windows server 2003 现在B上设置了一共享目录db_backup,然后在A上通过 \\ip\db_backup 不能进行访问,提示系统错误67 找不到网络名排查方法:1、检查A机子中的 TCP/IP 上的 NetBIOS、Computer Browser服务是否启动;2、检查B...2010-12-29 10:56:36 · 6515 阅读 · 1 评论 -
反思SQL的or连接词
下午在调试程序的时候一个诡异的现象,删除单据后被删除的单据依然显示在列表中,查看后台数据库,删除标记已经被置为Y。心里一阵纳闷,于是打断点跟踪,将程序加载时拼出来的语句放在SQL里执行了一把,结果还是把已经删除的记录给查出来了;然后就对着那个查询语句做修改,改来改去就是改不正确,明明在查询条件中对删除的字段做了过滤,但是还是能查出来。后来再将过滤条件一个一个添加,然后查询的土方法中终于发现了猫腻,...原创 2010-12-17 18:04:34 · 255 阅读 · 0 评论 -
尝试在数据库 5 中提取逻辑页 (1:1640) 失败。该逻辑页属于分配单元XXX ,而非 XXX。...
此信息表明数据库或表 已经部分损坏可以通过以下步骤尝试修复:1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 [code="sql"]use master declare @databasename varchar(255) set @databasena...2010-12-02 16:15:21 · 2834 阅读 · 0 评论 -
win7 安装sql2000
win7下安装sql2000的要点:1、以管理员身份运行 msconfig 见图12、在弹出的对话框里选择“工具”选项卡 见图23、选中列表中的“更改UAC”行 见图34、点击界面下方的“启动”按钮 见图45、在弹出的对话框中选择“从不通知”,点击确定 见图56、运行regedit,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentContr...原创 2010-11-22 11:56:55 · 194 阅读 · 0 评论 -
数据库日志已满
今天去查询历史库存表,发现6天的记录都没有被自动保存,运行备份语句,提示"数据库xxx日志已满。请备份该数据库的事务日志以释放一些日志空间。" 网上查了下相关资料,找到下面这个最好用的,.(本人只试过了前三步就OK了,后面的方法未验证)--压缩日志及数据库文件大小 /*--特别注意 请按步骤进行,未进行前面的步骤,请不要做后面的步骤 否则可能损坏...原创 2010-11-09 13:37:12 · 146 阅读 · 0 评论 -
关于解决SQLServer 2005安装时的COM+目录要求问题
1、开户MSDTC服务开始-运行,输入cmd后回车,在命令提示行中输入 msdtc -install 并回车。2、开启COM+ System Application服务。开始-运行,输入Services.msc后回车,打开服务和应用程序。并在服务列表里面找到COM+ System Application。右键单击,点属性,然后更改启动方式为“自动”,并点击下面的“启动”开启此服务。...原创 2010-09-06 21:23:00 · 171 阅读 · 0 评论 -
sql 所有格式时间
1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000 3. datediff 返回跨两个指定日期的...原创 2010-09-06 21:16:38 · 117 阅读 · 0 评论 -
SQL语句中的内联和外联【转】
联接可分为以下几类: 内联接(典型的联接运算,使用像 = 或 之类的比较运算符)。包括相等联接和自然联接。 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。 外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM 子句中指定外联接时,可以由下列几组关键字中的一组指定...原创 2010-09-06 21:06:03 · 146 阅读 · 0 评论 -
sql server用变量动态命名临时表表名【转】
如果需要动态创建表名,只能用以下两种方法:1、创建全局临时表(用两个#)。declare @n nvarchar(10),@s nvarchar(100)set @n = 'temp'set @s = N'select * into ##'+@n+' from mytable'--print @sexec sp_executesql @s2、创建真正的表(去掉#),一定...原创 2010-09-06 21:05:12 · 631 阅读 · 0 评论 -
把数字转换成大写(人民币)
[code="sql"]set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go CREATE PROCEDURE [dbo].[xxTodx] ( @n_LowerMoney numeric(15,2), @v_TransType int, @RET VARCHAR(200) output ) AS De...原创 2010-09-06 19:57:29 · 182 阅读 · 0 评论 -
表中多个主键的脚本处理
1、Create table ParentChild( ParentID int not null, ChildID int not null) ALTER TABLE ParentChild ADD PRIMARY KEY(ParentID , ChildID) 2、Create table Pa...原创 2010-09-06 19:50:29 · 143 阅读 · 0 评论 -
用脚本给表添加字段,修改字段
---修改表字段的长度alter table jScore alter column jHint varchar(100)GO--在原表中添加一个新的列alter table jSuspend add jType varchar(10) goalter table jCheck add jType varchar(10) go...原创 2010-09-06 19:49:47 · 771 阅读 · 0 评论 -
sql 行列转换【转】
说明:普通行列转换(version 1.0)仅针对sql server 2000提供静态和动态写法,version 2.0增加sql server 2005的有关写法。问题:假设有张学生成绩表(tb)如下:姓名 课程 分数张三 语文 74张三 数学 83张三 物理 93李四 语文 74李四 数学 84李四 物理 94想变成(得到如下结果): 姓名...原创 2010-09-06 19:49:01 · 206 阅读 · 0 评论 -
百万数据查询优化【转】
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select...原创 2010-09-06 19:48:05 · 78 阅读 · 0 评论 -
分页存储过程【转】
[code="sql"]Create PROC Proc_viewPage /* 敬告:适用于单一主键或存在唯一值列的表或视图 ps:Sql语句为8000字节,调用时请注意传入参数及sql总长度不要超过指定范围 */ @TableName ...原创 2010-09-06 19:45:25 · 60 阅读 · 0 评论 -
删除当前库中所有表记录
--先禁用所有外键约束 exec sp_msforeachtable 'alter table ? nocheck CONSTRAINT all' --然后删除数据 exec sp_msforEachTable 'TRUNCATE TABLE?' --再启用所有外键约束 exec sp_msforeachtable 'alter table ? check co...原创 2011-10-04 20:45:29 · 146 阅读 · 0 评论