-
SQLSERVER先判断视图是否存在然后再创建视图的语句
如果我们的语句为:IFNOTEXISTS(SELECT1FROMsys.viewsWHEREname='Report_IndividualTicket')BEGINcreateviewReport_IndividualTicketasSELECTTicket.TicketNumber,Ticket.TicketID,GisProcess.StageName,Content.DtReceived,Content.ContentTextFROM(GisProcessINNERJOINTicketONGisProcess.TicketID=Ticket.TicketID)INNERJOINContentONTicket.ContentID=Content.ContentIDEND会提示以下错误:Msg156,Level15,State1,Line4Incorrectsyntaxnearthekeyword'view'.出现这个错误的原因是:createview这一句必须是批处理中的第一句。所以可以将该语句修改为:IFEXISTS(SELECT1FROMsys.viewsWHEREname='...
数据库操作教程 2022-09-23 17:35:11 -
在SQLServer中使用ISNULL执行空值判断查询
有如下查询:复制代码代码如下:selectisnull(lastchanged,'')aslastchangedfromvhhostlistwheres_comment='test202'本来,ISNULL函数只有一个参数,它表示的含义就是判断这个参数的值是否为NULL,是NULL则返回TRUE,否则返回FALSE;但是,在SQLServer的查询语句中,isnull需要两个参数,它的含义是如果参数1为NULL,则以参数2为isnull函数的返回值;即,上面查询的的含义是,查询vhhostlist表中s_comment='test202'那一行lastchanged字段的值,如果它为NULL,则返回一个空字符串;记得以前不懂这个的时候,遇到这样一个情况:一张订单表,其中一个字段是status,订单提交上来时status为NULL。在程序里要做如下判断,当它为NULL时,显示一个审核的超链接;当它不为空时,显示一个字符串:已审...
数据库操作教程 2022-09-23 17:34:48 -
使用SQLServer判断文件是否存在后再删除(详解)
在SQLServer中可以使用系统内部存储过程xp_fileexist判断文件是否存在,如果存在再使用xp_cmdshell删除文件。xp_fileexist除了可以判断文件是否存在外,还可以判断文件夹是否存在,下面是下使用这两个的示例...
数据库操作教程 2022-09-23 17:30:10 -
解决无法在unicode和非unicode字符串数据类型之间转换的方法详解
今天用excel导入数据又遇到了…… 错误0xc02020f6:数据流任务:列“column”无法在unicode和非unicode字符串数据类型之间转换。 原因:仔细看了一下,发现有些字段是varchar的,而excel中估计都是nvarchar类型...
数据库操作教程 2022-09-23 17:26:22 -
简单判断MSSQL数据库版本(2000或者2005)
最近的一次对mssql数据库迁移操作中发现一个有趣的事情,可以用一条语句判断MSSQL数据库版本(准确度不高):select*fromsys.servers如果返回如下信息,应该是2000数据库:消息208,级别16,状态1,第1行对象名'sys.servers'无效。反之返回类似如下的信息,则可能为2005数据库1www-hostSQLServerSQLNCLIwww-hostNULLNULLNULL0原因:sys.servers这个对象在2000中没有,在2005中有...
数据库操作教程 2022-09-23 17:21:02 -
此数据库没有有效所有者,因此无法安装数据库关系图支持对象
在新建数据库或附加数据库后,想添加关系表,结果出现下面的错误:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTERAUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象...
数据库操作教程 2022-09-23 17:18:55 -
在SQLServer中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
这个问题对于规模稍微大些的项目而言,显得尤其重要了,数据库中如果有几百个存储过程,难道还一个个找不成,即使自己很了解业务和系统,时间长了,也难免能记得住。如何使用SQL语句进行查询呢?下面就和大家分享下SQL查询的方法:复制代码代码如下:selectdistinctnamefromsyscommentsa,sysobjectsbwherea.id=b.idandb.xtype='p'andtextlike'%pro_GetSN%'上面的蓝色字体部分表示要查询的存储过程的名称...
数据库操作教程 2022-09-23 17:16:50 -
SQL无法装载DLLMicrosoft原因(无法修改sa密码)
无法装载DLLMicrosoft原因:126(找不到指定的模块)。U890帐套引入提示:“无法装载DLLMicrosoft提示您请误随意操作SQL数据库以免对起数据库造成不必要的麻烦或该DLL所引用的某一DLL...
数据库操作教程 2022-09-23 17:15:18 -
sqlserver还原数据库时提示数据库正在使用,无法进行操作的解决方法
这个问题的原因在于有用户连接了当前要做还原的数据库,这里的用户甚至包括当前要做还原的用户。解决办法就是关闭与要还原数据库的所有连接...
数据库操作教程 2022-09-23 17:09:51 -
判断触发器正在处理的是插入,删除还是更新触发
但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作判断而已。你可以根据从下面方法判断触发器是是处理了插入,删除还是更新触发的:复制代码代码如下:--宣告两个变量DECLARE@DBIT=0DECLARE@IBIT=0--如果在DELETED内部临时触发表找到记录,说明旧数据被删除IFEXISTS(SELECTTOP11FROMDELETED)SET@D=1--如果在INSERTED内部临时触发表找到记录,说明有新数据插入IFEXISTS(SELECTTOP11FROMINSERTED)SET@I=1--如果两个表都有记录,说明触发器是执行更新触发IF@I=1AND@D=1PRINT(N'更新...
数据库操作教程 2022-09-23 17:07:51 -
SQLServer代理服务无法启动的解决方法
错误信息:错误MSSQLSERVERSQLServerAgentcouldnotbestarted(reason:SQLServerAgent必须能够以SysAdmin身份连接到SQLServer,但“(未知)”不是SysAdmin角色的成员)。运行环境:Windows2003R232bit+MSSQL2005+启用SQL的AWE内存管理出现原因:给SQL降权到NetworkService权限运行之后...
数据库操作教程 2022-09-23 17:07:10 -
sqlserver各种判断是否存在(表名、函数、存储过程等)
sqlserver中如何判断表或者数据库的存在,但在实际使用中,需判断Status状态位:其中某些状态位可由用户使用sp_dboption(readonly、dbouseonly、singleuser等)进行设置:1=autoclose;使用sp_dboption设置。数据库完全关闭,其资源在最后一个用户注销后释放...
数据库操作教程 2022-09-23 17:07:01