-
SqlLoader怎么使用
SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据...
数据库操作教程 2022-09-23 17:35:16 -
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 -
在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中使用SQL语句实现把重复行数据合并为一行并用逗号分隔
一.定义表变量复制代码代码如下:DECLARE@T1table(UserIDint,UserNamenvarchar(50),CityNamenvarchar(50));insertinto@T1(UserID,UserName,CityName)values(1,'a','上海')insertinto@T1(UserID,UserName,CityName)values(2,'b','北京')insertinto@T1(UserID,UserName,CityName)values(3,'c','上海')insertinto@T1(UserID,UserName,CityName)values(4,'d','北京')insertinto@T1(UserID,UserName,CityName)values(5,'e','上海')select*from@T1-----最优的方式SELECTCityName,STUFF((SELECT','+UserNameFROM@T1subTitleWHERECityName=A.CityNameFORXMLPATH('')),1,1,'')ASAF...
数据库操作教程 2022-09-23 17:34:05 -
如何使用VisualStudio2010在数据库中生成随机测试数据
测试在项目中是很重要的一个环节,在VisualStudio2010中,在测试方面已经有很好的支持了,比如有单元测试,负载测试等等。在数据测试的方面,VisualStudio2010,还支持对数据库进行多种测试,其中一个很好用的功能是能为开发者在测试阶段,大量方便地为数据库生成随机的数据,而且还可以自己指定生成数据的规则,十分方便,这就让在测试过程中,开发者能有更充足的数据样本对项目进行测试...
数据库操作教程 2022-09-23 17:33:17 -
SQL优化基础使用索引(一个小例子)
按照本文操作和体会,会对sql优化有个基本最简单的了解,其他深入还需要更多资料和实践的学习:1.建表:复制代码代码如下:createtablesite_user(idintIDENTITY(1,1)PRIMARYKEY,[name]varchar(20),codevarchar(20),datedatetime)2.插入8万条数据复制代码代码如下:declare@mintset@m=1while@m<80000beginINSERTINTO[demo].[dbo].[site_user]([name],[code],date)VALUES('name'+CAST(@mASVARCHAR(20)),'code'+CAST(@mASVARCHAR(20)),GETUTCDATE())select@m=@m+1END--小技巧:推荐使用类似sqlassist的工具来提高敲写sql语句的速度3.设置打开一些参数的设置复制代码代码如下:SETSTATISTICSIOon--查看磁盘IOsetstatisticstimeon--查看sql语句分析编译和执行时间SELECT*FROMsite_...
数据库操作教程 2022-09-23 17:31:53 -
使用SQLServer判断文件是否存在后再删除(详解)
在SQLServer中可以使用系统内部存储过程xp_fileexist判断文件是否存在,如果存在再使用xp_cmdshell删除文件。xp_fileexist除了可以判断文件是否存在外,还可以判断文件夹是否存在,下面是下使用这两个的示例...
数据库操作教程 2022-09-23 17:30:10 -
sp_executesql使用复杂的Unicode表达式错误的解决方法
Msg102,Level15,State1,Line3Incorrectsyntaxnear'+'.当你尝试执行下面这段代码时,会得到如上这个错误提示。复制代码代码如下:DECLARE@MyNameNVARCHAR(100)DECLARE@FieldNameSYSNAME=N'Name'EXECUTEsp_executesqlN'SELECTTOP1@OutputName=['+@FieldName+']FROM[dbo].[Member]',N'@OutputNameNVARCHAR(100)OUTPUT',@MyNameOUTPUT;SELECT@MyName问题出于不允许使用更复杂的Unicode表达式(例如使用+运算符连接两个字符串)...
数据库操作教程 2022-09-23 17:28:34 -
使用TOP子句限制UPDATE语句更新的数据
可以使用TOP子句来限制UPDATE语句中修改的行数。当TOP(n)子句与UPDATE一起使用时,将针对随机选择的n行执行删除操作...
数据库操作教程 2022-09-23 17:27:11 -
使用BULKINSERT大批量导入数据SQLSERVER
开门见山,直接以例子介绍:复制代码代码如下:CREATETABLE[dbo].[course]([id][int]NULL,[name][nvarchar](50)NULL,[CourseType][nvarchar](50)NULL,[Course][float]NULL)导入数据:将下面的数据存储为文本文件或SQL文件2,李刚,语文,89;3,李刚,数学,79;3,李刚,英语,69;4,李刚,化学,89导入语句:复制代码代码如下:BULKINSERTdbo...
数据库操作教程 2022-09-23 17:25:41 -
insertselect与selectinto的用法使用说明
insertinto(列名)select列名from表名where条件--不创建表,只复制表数据select列名into表名(这个表名是不存在的)from表名where条件,--创建一张新表,只复制选择的列名字段数据Insert是T-sql中常用语句,InsertINTOtable(field1,field2,...)values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECTINTO和INSERTINTOSELECT表复制语句了...
数据库操作教程 2022-09-23 17:25:36