仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 801|回复: 8
打印 上一主题 下一主题

[学习教程] MSSQL编程:SQL Server 2005中的SQLCMD东西利用

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:17:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或--silent选项的任何一个。  本文概述SQLServer2005中的SQLCMD工具利用办法历程等,并汇总变量列表。
  1、你能够用SQLCMD实行交互式举措,如:
  C:sqlcmd>sqlcmd
  1>SELECTnamefromsys.databases
  2>GO
  你也能够试着键进以下命令,实际服务器列表
  1>:ServerList
  SERVERS:
  WUYZ
  1>假如想看其他命令的利用,能够键进:Help/?
  2、实行SQL剧本文件
  你能够在SQLCMD命令上到场参数I来实行SQL剧本文件,比方:
  C:sqlcmd>sqlcmd-itest.sql
  下面的I选项同意你实行一个剧本文件,别的,你也能够指定O选项,把命令的输入导出到指定文件,固然,我们也能够在代码中指定输入了局,以下
  C:sqlcmd>sqlcmd
  1>:outoutput.txt
  2>:rtest.sql
  3、在剧本中利用变量
  SQLCMD撑持能够在剧本中吸收用户传进的变量信息,以下面语句:
  SETNOCOUNTON
  Select$(Cols)from$(tablename)
  GO
  下面语句哀求2个参数,我们能够经由过程指定响应的参数信息传给剧本,以下:
  C:sqlcmd>sqlcmd-itest.sql-oOutput.txt-vcols="name,object_id,create_date"tablename="sys.objects"
  下面语句的用处是:实行TEST.SQL剧本文件,并把输入的信息输入到OUTPUT.TXT文件中,并分离指定了COLS,TABLENAME的参数值
  4、在剧本中设置变量的值
  除经由过程内部传进参数的值外,还能够在外部设置参数的值,以下面例子
  e:sqlcmdackuptemplate.sql
  usemaster
  backupdatabase[$(db)]todisk=$(file)
  e:sqlcmdackupsingle.sql
  :setvardbmsdb
  :setvarfilec:  empmsdb.bak
  :re:sqlcmdackuptemplate.sql
  假如你想晓得固然界说了哪些变量,可使用:listvar命令来显现。次要命令汇总:
  :rfilename
  :ServerList
  :List
  :Listvar
  :Errorfilename|STDOUT|STDERR
  :Outfilename|STDOUT|STDERR
  :Perftracefilename|STDOUT|STDERR
  :Connectserver[instance][timeout][user_name[password]]
  :OnError[exit|ignore]
  :SetVarvariablevalue
  :Help:XMLON|OFF
  次要情况变量汇总:
  -aSQLCMDPACKETSIZE
  -dSQLCMDDBNAME
  -HSQLCMDWORKSTATION
  -hSQLCMDHEADERS
  -lSQLCMDLOGINTIMEOUT
  -mSQLCMDERRORLEVEL
  -PSQLCMDPASSWORD
  -SSQLCMSSERVER
  -sSQLCMDCOLSEP
  -tSQLCMDSTATTIMEOUT
  -USQLCMDUSER
  -wSQLCMDCOLWIDTH
mysql的prepare其实是本地PHP客户端模拟的,并没有根据你mysql的设置做字符集的调整。应该交与mysqlserver端做prepare,同时得调用mysql_set_character_set去操作,server才会按照字符集去做转义。
兰色精灵 该用户已被删除
沙发
发表于 2015-1-19 06:44:29 | 只看该作者
习惯敲命令行的朋友可能会爽一些。但是功能有限。适合机器跑不动SQLServerManagementStudio的朋友使用。
第二个灵魂 该用户已被删除
板凳
发表于 2015-1-26 15:13:11 | 只看该作者
入门没那么困难,精通没那么容易
再见西城 该用户已被删除
地板
发表于 2015-2-4 19:30:37 | 只看该作者
分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。
深爱那片海 该用户已被删除
5#
发表于 2015-2-10 05:42:12 | 只看该作者
如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。
活着的死人 该用户已被删除
6#
发表于 2015-2-28 22:22:42 | 只看该作者
在select语句中可以使用groupby子句将行划分成较小的组,然后,使用聚组函数返回每一个组的汇总信息,另外,可以使用having子句限制返回的结果集。
海妖 该用户已被删除
7#
发表于 2015-3-10 08:49:38 | 只看该作者
比如,MicrosoftSQLServer2008的某一个版本可以满足现在的这个业务的需要,而且价格还比Oracle11g要便宜,那么这一产品就是适合的。
小妖女 该用户已被删除
8#
发表于 2015-3-17 06:11:24 | 只看该作者
外键的级联更能扩展可能大部分的同行在设计OLTP系统的时候都不愿意建立外键,都是通过程序来控制父子数据的完整性。
蒙在股里 该用户已被删除
9#
发表于 2015-3-23 23:32:09 | 只看该作者
入门没那么困难,精通没那么容易
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-4 16:00

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表