MSSQL编程:MS SQL SERVER 图象或年夜文本的输出输入...
在JOIN操作中(需要从多个数据表提取数据时),MySQL只有在主键和外键的数据类型相同时才能使用索引。server在MSSQLSERVER安装目次下有个可实行文件叫TEXTCOPY.EXE
可对MSSQLSERVER中的文本或图象数据举行输出输入.
不外你能够在MS-DOS体例下实行textcopy/?失掉它的形貌。
上面是这个工具的形貌:
CopiesasingletextorimagevalueintooroutofSQLServer.Theval
ue
isaspecifiedtextorimagecolumnofasinglerow(specifiedbyth
e
"whereclause")ofthespecifiedtable.
IfthedirectionisIN(/I)thenthedatafromthespecifiedfileis
copiedintoSQLServer,replacingtheexistingtextorimagevalue.If
the
directionisOUT(/O)thenthetextorimagevalueiscopiedfrom
SQLServerintothespecifiedfile,replacinganyexistingfile.
TEXTCOPY]]]
]
[{/I|/O}][/?]
/SsqlserverTheSQLServertoconnectto.Ifsqlserverisn
ot
specified,thelocalSQLServerisused.
/UloginThelogintoconnectwith.Ifloginisnotspec
ified,
atrustedconnectionwillbeused.
/PpasswordThepasswordforlogin.Ifpasswordisnot
specified,aNULLpasswordwillbeused.
/DdatabaseThedatabasethatcontainsthetablewiththetex
tor
imagedata.Ifdatabaseisnotspecified,thed
efault
databaseofloginisused.
/TtableThetablethatcontainsthetextorimagevalue.
/CcolumnThetextorimagecolumnoftable.
/W"whereclause"Acompletewhereclause(includingtheWHEREkeyw
ord)
thatspecifiesasinglerowoftable.
/FfileThefilename.
/ICopytextorimagevalueintoSQLServerfromfi
le.
/OCopytextorimagevalueoutofSQLServerinto
file.
/KchunksizeSizeofthedatatransferbufferinbytes.Minimu
m
valueis1024bytes,defaultvalueis4096bytes.
/ZDisplaydebuginformationwhilerunning.
/?Displaythisusageinformationandexit.
Youwillbepromptedforanyrequiredoptionsyoudidnotspecify.
为此,可写一个存储历程,挪用这个命令
CREATEPROCEDUREsp_textcopy(
@srvnamevarchar(30),
@loginvarchar(30),
@passwordvarchar(30),
@dbnamevarchar(30),
@tbnamevarchar(30),
@colnamevarchar(30),
@filenamevarchar(30),
@whereclausevarchar(40),
@directionchar(1))
AS
DECLARE@exec_strvarchar(255)
SELECT@exec_str=
textcopy/S+@srvname+
/U+@login+
/P+@password+
/D+@dbname+
/T+@tbname+
/C+@colname+
/W"+@whereclause+
"/F+@filename+
/+@direction
EXECmaster..xp_cmdshell@exec_str
上面是一个拷贝图象到SQLServer的pubs数据库的例子,表名pub_info,字段名
logo,图象文件名picture.bmp,保留到pub_id=0736纪录sp_textcopy@srvn
ame=ServerName,
@login=Login,
@password=Password,
@dbname=pubs,
@tbname=pub_info,
@colname=logo,
@filename=c:picture.bmp,
@whereclause="WHEREpub_id=0736",
@direction=I
在ORDERBY操作中,MySQL只有在排序条件不是一个查询条件表达式的情况下才使用索引。(虽然如此,在涉及多个数据表查询里,即使有索引可用,那些索引在加快ORDERBY方面也没什么作用)。 以前的DTS轻盈简单。但是现在的SSIS虽然功能强大了很多,但是总是让人感觉太麻烦。看看论坛中询问SSIS的贴子就知道。做的功能太强大了,往往会有很多用户不会用了 如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。 也可谈一下你是怎么优化存储过程的? 你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。 如果你是从“学习某一种数据库应用软件,从而获得应聘的资本和工作机会”的角度来问的话。 但是随着数据量的增大,这种成本差距会逐渐减小,趋于相等。(500万数量级只相差10%左右) 发几份SQL课件,以飨阅者 大家注意一点。如下面的例子:
页:
[1]