-
SQLSERVER使用ODBC驱动建立的链接服务器调用存储过程时参数不能为NULL值
我们知道SQLSERVER建立链接服务器(LinkedServer)可以选择的驱动程序非常多,最近发现使用ODBC的MicrosoftOLEDB驱动程序建立的链接服务器(LinkedServer),调用存储过程过程时,参数不能为NULL值。否则就会报下面错误提示:对应的英文错误提示为:EXECxxx.xxx.dbo.Usp_TestNULL,NULL,'ALL'Msg7213,Level16,State1,Line1Theattemptbytheprovidertopassremotestoredprocedureparameterstoremoteserver'xxx'failed.Verifythatthenumberofparameters,theorder,andthevaluespassedarecorrect.对应的中文错误提示为:EXECxxx.xxx.dbo.Usp_TestNULL,NULL,'ALL'Msg7213,Level16,State1,Line1提供程序将远程存储过程参数传递给远程服务器'xxx'的尝试失败...
数据库操作教程 2022-09-23 17:35:04 -
sqlserver2000中创建用户的图文方法
一旦被黑客获取到webshell,黑客就知道了你的sqlserver管理员密码,如果sqlserver再没有经过安全设置那么黑客很容易就提权并新建系统管理员账号,那么黑客就可以轻松的控制你的电脑了。所以一定要进行安全设置,脚本之家网站就提供了这项服务,帮用户安全设置...
数据库操作教程 2022-09-23 17:26:11 -
安装sqlserver2008后再安装sql2005找不到本地服务器的解决方法
最近在项目中安装sqlserver2005,发现找不到本地服务器,因为此前我已经安装了sqlserver2008,打开2005数据库引擎后找不到本地服务器,在网上也找不到正确的解决办法,以为是组件没有安装,有重新安装一次问题依然存在,当时很是郁闷,后来想想是不是组件没有安装,重装了一次还是这样,后来想想是不是2005的服务器实例与2008重合了,在重装的时候就在安装此步骤的实例没有选择默认实例如下图,此处要注意:不能选择默认实例,单击“已安装的实例”会发现有2008的服务器名称,如果选择默认的就不会安装2005的服务器所有在命名实例中填入服务器名称,如SQL2005,其他的安装按照正常步骤来,后来安装完成后在本地服务器中找到了2005的本地服务器。在此sqlserver安装过程中相信也有遇到同类问题的友友,在此处记录下来,以免遇到同样问题的博友重蹈覆辙!...
数据库操作教程 2022-09-23 17:24:07 -
在SQL触发器或存储过程中获取在程序登录的用户
实现一个AuditLog的功能,是B/S结构专案。每个用户可以登录系统,在程序中操作数据(添加,更新和删除)需要实现记录操作跟踪...
数据库操作教程 2022-09-23 17:23:26 -
CREATEFUNCTIONsqlserver用户定义函数
创建用户定义函数,它是返回值的已保存的Transact-SQL例程。用户定义函数不能用于执行一组修改全局数据库状态的操作...
数据库操作教程 2022-09-23 17:18:33 -
SQLServer2000报1053错误(服务没有及时响应或控制请求)的解决方法
今天启动SQLServer2000时报1053错误错误如下所示:发生错误1053-(服务没有及时响应或控制请求。),此时正在MSSQLServer服务上执行该服务操作...
数据库操作教程 2022-09-23 17:17:15 -
sqlserver多表查询不同数据库服务器上的表
第一种方法:复制代码代码如下:/*创建链接服务器*/execsp_addlinkedserver'srv_lnk','','sqloledb','条码数据库IP地址'execsp_addlinkedsrvlogin'srv_lnk','false',null,'用户名','密码'go/*查询示例*/SELECTA.ListCodeFROMsrv_lnk...
数据库操作教程 2022-09-23 17:13:56 -
SQLServer复制需要有实际的服务器名称才能连接到服务器
今天在做sqlServer2005的实验的时候碰到的问题,问题描述很清楚,怀疑是我以前给计算机修改了名称而导致的.可以用select@@servername和selectserverproperty('servername')对照一下,两个的结果是否一样,不一样就会出现问题,以下给出解决的SQL脚本复制代码代码如下:ifserverproperty('servername')<>@@servernamebegindeclare@serversysnameset@server=@@servernameexecsp_dropserver@server=@serverset@server=cast(serverproperty('servername')assysname)execsp_addserver@server=@server,@local='LOCAL'end执行之后,重新sql即可解决这个问题...
数据库操作教程 2022-09-23 17:10:31 -
sqlserver通用的删除服务器上的所有相同后缀的临时表
复制代码代码如下:usetempdbifobject_id('tempdb..#table')isnotnulldroptabletempdb..#tableselectnameintotempdb..#tablefrom(select*fromsysobjectswherextype='U')awherea.namelike'%test_select'declare@tablevarchar(100),@countintselect@count=count(name)fromtempdb..#tablewhile(@count>0)beginselecttop1@table=namefromtempdb..#tableexec('ifobject_id('''+@table+''')isnotnulldroptable'+@table+'deletefromtempdb..#tablewherename='''+@table+'''')set@count=@count-1enddroptabletempdb..#table建议:尽量不要大量使用临时表,因为使用tempdb库会使...
数据库操作教程 2022-09-23 17:09:11 -
SQLServer代理服务无法启动的解决方法
错误信息:错误MSSQLSERVERSQLServerAgentcouldnotbestarted(reason:SQLServerAgent必须能够以SysAdmin身份连接到SQLServer,但“(未知)”不是SysAdmin角色的成员)。运行环境:Windows2003R232bit+MSSQL2005+启用SQL的AWE内存管理出现原因:给SQL降权到NetworkService权限运行之后...
数据库操作教程 2022-09-23 17:07:10 -
SQLSERVER记录登录用户的登录时间(自写脚本)
前一阵子经理问我能不能把用户最后一次登录我们的业务数据库的时间记录下来,因为之前有人修改过数据库sa用户的登录密码,所以我们要记录一下。我查了一下资料,好像不能记录谁登录过业务库,只能记录谁登录过SQLSERVER数据库版本是SQL2005,操作系统:Windows7下面是本人写的一个脚本,我的实现原理是使用触发器,触发器是登录触发器,范围是整个服务器范围,如果有人登录过,就使用bcp命令把登录信息记录日志文件1、如果原来数据库已经存在触发器把他删掉复制代码代码如下:USEMASTERGODROPTRIGGERtrg_logon_attempttestONALLSERVERGO2、在D盘新建一个文本文件d:Logondata.txt这个文本文件用来记录登录信息3、创建一个登录触发器审核登录事件复制代码代码如下:CREATETRIGGERtrg_logon_attempttestONALLSERVERWITHEXECUTEAS'sa'FORLOGON,ALTER_LOGINASBEGINDECLARE@cmdnvarchar(4000)SELECT@cmd='ECHO'+ORIGINAL...
数据库操作教程 2022-09-23 17:06:44 -
SQLSERVER利用存储过程查看角色和用户信息的写法
1、查看服务器角色相关信息SP_HELPSRVROLESP_HELPSRVROLEMEMBER服务器角色SP_HELPSRVROLE服务器角色2、查看数据库角色相关信息SP_HELPROLESP_HELPROLEMEMBER数据库角色SP_HELPROLE数据库角色3、查看用户相关信息SP_HELPUSERSP_HELPUSER数据库用户名...
数据库操作教程 2022-09-23 17:06:38