图解sql server 命令行工具sqlcmd的使用
一 操作实例
安装了sql server后此工具已经有了;
以sa登录;
打个命令,没反映;
可执行操作系统命令;加上!!即可;
查看帮助;
再打命令,也没反映;查询结果不显示;
要加上go,才行;
执行sql语句;
在企业管理器中查看,命令行创建的数据库出现了;
前面创建的表不在my_db中,切换上下文,再创建;
创建表;
插入数据;
在企业管理器查看,命令行插入的数据出现了;
二 sql server 命令行工具
一sqlserver2000下的命令行执行
何为 Osql?osql 工具是一个 Microsoft Windows 32 命令提示符工具,您可以使用它运行 Transact-SQL 语句和脚本文件。osql 工具使用 ODBC 数据库应用程序编程接口 (API) 与服务器通讯。说白了就是微软作的一个exe程序可以连本机服务器或者其他服务器。
C:>osql -S 服务器名\实例名 -U sa回车会出现下面提示,输入密码。
Password 11111
然后就可以输入sql进行数据库操作了
use master;
go
select * from sysusers;
go
osql此命令行工具来管理sqlserver
1.建立一个新的登陆用户
用windows验证,
sp_grantlogin
例如:
exec sp_grantlogin用户名
SQL Server验证
sp_addlogin
例如:
EXEC sp_addlogin用户名,密码
只有拥有sysadminsecurityadmin角色的用户才可以运行sp_grantloginsp_addlogin这个存储过程。
2.上面的用户名只能登陆服务器,还不能对数据库进行操作。
只有拥有sysadmindb_accessadmindb_owner角色的用户才可以运行sp_grantdbaccess
sp_grantdbaccess
EXEC sp_grantdbaccess window用户名,用户名
3.更改密码
exec sp_password旧密码,新密码,用户名
拥有sysadmin角色的用户可以更改其他用户的密码,一般用户只能修改自己的密码
4.建立数据库
create database test(数据库名)
拥有sysadmindbcreator角色的用户可以执行此操作。
5.备份、恢复数据库
备份
BACKUP DATABASE mydb TO DISK = C:MSDEBackupmydb.bak
BACKUP LOG mydb TO DISK = C:MSDEBackupmydb_log.bak
拥有sysadmindb_ownerdb_backupoperator角色的用户可以执行此操作。
恢复
RESTORE DATABASE mydb FROM DISK =C:MSDEBackupmydb.bak
拥有sysadmindbcreatordbo角色的用户可以执行此操作。
6.附加和分离数据库
分离数据库:可以从当前SQL Server服务器的实例中分离出数据库。
EXEC sp_detach_db mydb
拥有sysadmin角色的用户可以执行此操作。
附加数据库:.mdf,.ldf这两个文件是必须的,下面的语句可以附加这两个文件到当前系统中,产生新的数据库。
EXEC sp_attach_db @dbname = Nmydb,
@filename1 = NC:MSDEBackupmydb.mdf,
@filename2 = NC:MSDEBackupmydb.ldf
上面的大写字母N是Unicode字符串常量的前缀。前缀“N”在SQL-92标准中定义。
二. SQL Server 2005
SQL Server 2005 仍完整支持前版的 osql 工具程序来连接到 SQL Server 2005。不过,必须利用 SQL Server 2005 所提供的 osql 版本来执行新的功能。若你使用 SQL Server 2000 所提供的 osql 访问 SQL Server 2005,则只能执行与旧版兼容的功能,而部分新功能将无法使用。
在通过 SqlCmd 登录与执行 T-SQL 语法之前,有相当多的选择参数可用,你可以在命令提示行输入如下的语法:
SqlCmd/?
1 SQL Server 2005中的"SQLCMD"工具使用
1、你可以用SQLCMD执行交互式动作,如:
C:sqlcmd>sqlcmd 1> SELECT name from sys.databases 2> GO
你也可以试着键入如下命令,现实服务器列表:
1>:ServerList SERVERS: WUYZ 1>
如果想看其他命令的使用,可以键入:Help /?
2、执行SQL脚本文件
你可以在SQLCMD命令上加入参数I来执行SQL脚本文件,例如:
C:sqlcmd>sqlcmd -i test.sql
补充:sqlcmd -s 127.0.0.1 -i g:\1.sql -U sa -P 123456
上面的I选项允许你执行一个脚本文件,另外,你也可以指定O选项,把命令的输出导出到指定文件,当然,我们也可以在代码中指定输出结果,如下:
C:sqlcmd>sqlcmd 1> :out output.txt 2> :r test.sql
在脚本中使用变量
SQLCMD支持可以在脚本中接收用户传入的变量信息,如下面语句:
SET NOCOUNT ON Select $(Cols) from $(tablename) GO
上面语句请求2个参数,我们可以通过指定相应的参数信息传给脚本,如下:
C:sqlcmd>sqlcmd -i test.sql -o Output.txt -v cols="name,object_id,create_date" tablename="sys.objects"
上面语句的用途是:执行TEST.SQL脚本文件,并把输出的信息输出到OUTPUT.TXT文件中,并分别指定了COLS,TABLENAME的参数值
4、在脚本中设置变量的值
除了通过外部传入参数的值外,还可以在内部设置参数的值,如下面例子
e:sqlcmdbackuptemplate.sql use master backup database [$(db)] to disk="$(file)" e:sqlcmdbackupsingle.sql :setvar db msdb :setvar file c:tempmsdb.bak :r e:sqlcmdbackuptemplate.sql
如果你想知道当然定义了哪些变量,可以使用:listvar命令来显示
主要命令汇总:
:r filename :ServerList :List :Listvar :Error filename | STDOUT | STDERR :Out filename | STDOUT | STDERR :Perftrace filename | STDOUT | STDERR :Connect server[instance] [timeout] [user_name[password] ] :On Error [exit | ignore] :SetVar variable value :Help:XML ON | OFF
主要环境变量汇总:
-a SQLCMDPACKETSIZE -d SQLCMDDBNAME -H SQLCMDWORKSTATION -h SQLCMDHEADERS -l SQLCMDLOGINTIMEOUT -m SQLCMDERRORLEVEL -P SQLCMDPASSWORD -S SQLCMSSERVER -s SQLCMDCOLSEP -t SQLCMDSTATTIMEOUT -U SQLCMDUSER -w SQLCMDCOLWIDTH
2启动 sqlcmd 实用工具并连接到 SQL Server 的默认实例
在“开始”菜单上,单击“运行”。 在“打开”框中,键入 cmd,然后单击“确定”打开命令提示符窗口。
在命令提示符处,键入 sqlcmd。
按 Enter 键。
现在,您已与计算机上运行的默认 SQL Server 实例建立了可信连接。
1> 是 sqlcmd 提示符,可以指定行号。 每按一次 Enter,该数字就会加 1。
若要结束 sqlcmd 会话,请在 sqlcmd 提示符处键入 EXIT。
3启动 sqlcmd 实用工具并连接到 SQL Server 的命名实例
打开命令提示符窗口,键入 sqlcmd -SmyServer\instanceName。 使用计算机名称和要连接的 SQL Server 实例替换 myServer\instanceName。
按 Enter 键。
sqlcmd 提示符 (1>) 指示已连接到指定的 SQL Server 实例。
图解sql server 命令行工具sqlcmd的使用相关推荐
- MSSQL-Scripter,一个新的生成T-SQL脚本的SQL Server命令行工具
这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter.它支持在SQL Server.Azure SQL DB以及Azure SQL DW中为数据库生成 ...
- Linux服务器安装 sqlcmd 和 bcp SQL Server 命令行工具
官方文档 https://docs.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-drive ...
- sql安装弹出sqlcmd_使用SQL Server命令行(sqlcmd)
sql安装弹出sqlcmd 介绍 (Introduction) Sqlcmd allows executing queries, T-SQL sentences and SQL Server scri ...
- SQL Server命令行
本文来源于网络收集,Mark一下. 1.登陆 osql -S localhost -U sa -P 123456 T-SQL 即 Transact-SQL,是 SQL 在 Microsoft SQL ...
- 在ubuntu中使用命令行工具sqlcmd连接sql server数据库
步骤: 首先安装sqlcmd工具 注意:如果你连接的用户是 root用户,命令中带有 sudo 的,sudo都可以酌情去掉,不行再加上 1 安装curl软件包: sudo apt install cu ...
- SQL Server 命令行管理工具:SqlLocalDB.exe
SqlLocalDB.exe 是一个简单的工具,它使用户能够从命令行轻松管理 LocalDB 实例. 它作为 LocalDB 实例 API 的简单包装实现. 与在很多类似的 SQL Server 工具 ...
- 基于sqlcmd命令行工具管理SQL server
在SQLServer数据库当中,除了大家熟知的基于SSMS来管理SQLserver数据库之外,还有一个很强大的命令行工具sqlcmd.该命令行工具基本等同于Oracle SQL*Plus以及 MySQ ...
- SQL Server 2005中的SQLCMD工具使用
SQL Server 2005中的SQLCMD工具使用 1.你可以用SQLCMD执行交互式动作,如: C:\sqlcmd>sqlcmd 1> SELECT name from sys.da ...
- mysql dede arctiny_如何用织梦SQL命令行工具操作数据库及常用sql语句整理
用织梦的朋友都知道,如果需要对数据库进行批量操作,可以用织梦后台[系统]-[sql命令行工具]实现.其实这只是织梦系统为了大家操作方便,提供的一个对mysql数据库操作的工具,这样大家在需要批量操作数 ...
最新文章
- 一次DPM备份Exchange DAG的故障处理过程
- python 链表两数相加
- java学习笔记7--抽象类与抽象方法
- Pytest入门【1】
- 做数仓运维,你必须要认识这个眼观六路耳听八方的“能人”
- xp系统怎样启动打印机服务器,WinXP系统如何开启Printspooler服务?
- 什么叫显示动力学_通过流体动力学研究找到制作煎饼的最佳方法
- 计算机控制系统电阻加热课设,计算机控制系统课程设计资料.doc
- LC - P03 机器人大冒险
- 论文阅读 | Region Proposal by Guided Anchoring
- 剑指offer 62题 约瑟夫环
- TVS二极管、环流二极管、稳压(齐纳)二极管、肖特基二极管、开关二极管的分类说明
- mac桌面壁纸_在Mac上从命令行设置桌面墙纸
- 一只超级愤怒的租房者对黑中介(鹏基伟业的控诉)
- Java版吃豆游戏及源码
- 常微分方程(ODE)的数值计算方法
- Android源码50例汇总,欢迎各位下载 【转载自51CTO】
- 使用轮询方式进行ADC转换(野火STM32 MINI开发板)
- 用自家自己的电脑做网站服务器建立个人网站
- python正则匹配百度检索到的后台管理网站