Ⅰ OSQL 在dos下输出格式设置
是osql
osql :sqlserver外部命令工具,说白了就是微软作的一个exe程序可以连本机服务器或者其他服务器
-S 指定sql数据库服务器
-U 用户名
-P 密码
-d 数据库
-i 使用输入文件
%cd%\ windows环境变量,映射到实际的目录
PCEDI_put_ASNData.sql 可以执行的sql文件
=================================================
其他参数:
view plain to clipboardprint?
-S server_name[\instance_name]
指定要连接到的 Microsoft SQL Server 实例。指定 server_name 将连接到该服务器上 SQL Server 的默认实例。指定 server_name\instance_name 将连接到该服务器上 SQL Server 的某个命名实例。如果未指定服务器,osql 将连接到本地计算机上的 SQL Server 默认实例。从网络上的远程计算机执行 osql 时,此选项是必需的。
-H wksta_name
工作站名称。工作站名称存储在 sysprocesses.hostname 中,并按 sp_who 显示。如果不指定此选项,则采用当前计算机名称。
-d db_name
启动 osql 时发出一个 USE db_name 语句。
-l time_out
指定 osql 登录超时之前的秒数。登录 osql 的默认超时时间为 8 秒。
-t time_out
指定命令超时之前的秒数。如果不指定 time_out 值,则命令不会超时。
-h headers
指定要在列标题之间打印的行数。默认为每一组查询结果打印一次标题。使用 -1 可指定不打印标题。如果使用 -1,则在参数和设置橡闷册之间一定不能有空格(可以是 -h-1,不能是 -h -1)。
-s col_separator
指定列分隔符字符,默认值为空格。若要使用对操作系统有特殊含义的字符(例如 | ; & < >),请将该字符用双引号 (") 括起来。
-w column_width
允许用户设置屏幕输出的宽度。默认为 80 个字符。当输出行达到其最大屏幕宽度时,会拆分为多行。
-a packet_size
允许您请求不同大小的数据包。packet_size 的有效值在 512 到 65535 之间。osql 的默认值为服务器的默认值。执行较大的脚本时,各个 GO 命令之间的 SQL 语句的数量是梁宏庞大的,因此增大数据包可以提高性能。Microsoft 的测试表明大容罩扰量复制操作的最快设置通常为 8192。可以请求更大的数据包,但如果请求不能得到批准,则 osql 会将此值默认为服务器的默认值。
-e
回显输入。
-I
将 QUOTED_IDENTIFIER 连接选项设置为开启。
-D data_source_name
连接到用 ODBC 驱动程序为 Microsoft SQL Server 定义的 ODBC 数据源。osql 连接使用该数据源中指定的选项。
注意:
此选项不适用于为其它驱动程序定义的数据源。
-c cmd_end
指定命令终止符。默认情况下,可以在行中输入一个单独的 GO 来终止命令,并将该命令发送到 SQL Server。如果要重置命令终止符,请勿使用对操作系统有特殊含义的 Transact-SQL 保留字或字符,无论其前面是否有反斜杠。
-q " query "
启动 osql 时执行查询,但在查询完成时不退出 osql。(注意查询语句不应包含 GO)。如果从批处理文件中发出查询,请使用 %variables 或环境 %variables%。例如:
复制代码
SET table=sys.objects
osql -E -q "select name, object_id from %table%"
将查询用双引号括起来,将查询中嵌入的任何内容用单引号括起来。
-Q " query "
执行查询并立即退出 osql。将查询用双引号括起来,将查询中嵌入的任何内容用单引号括起来。
-n
从输入行中删除编号和提示符号 (>)。
-m error_level
自定义错误信息的显示。显示指定的或更高严重级别的错误的消息数、状态和错误级别。不显示低于指定级别的错误的信息。使用 -1 可以指定返回所有标题及其消息,即使是信息型消息。如果使用 -1,则在参数和设置之间不能有空格(可以是 -m-1,不能是 -m -1)。
-r
将消息输出重定向到屏幕 (stderr)。如果不指定参数,或指定参数为 0,则仅重定向严重级别为 11 或更高的错误信息。如果指定参数为 1,则将重定向所有消息输出(包括“print”)。
-i input_file
标识包含一批 SQL 语句或存储过程的文件。小于 (<) 比较运算符可以代替 -i 使用。
-o output_file
标识从 osql 接收输出的文件。大于 (>) 比较运算符可以代替 -o 使用。
如果 input_file 不是 Unicode,并且未指定 -u,则 output_file 将存储为 OEM 格式。如果 input_file 是 Unicode,或指定了 -u,则 output_file 将存储为 Unicode 格式。
-p
打印性能统计信息
-b
指定发生错误时,osql 退出并返回一个 DOS ERRORLEVEL 值。如果 SQL Server 错误消息的严重级别为 11 或更高,DOS ERRORLEVEL 变量返回的值为 1;否则,返回的值为 0。Microsoft MS-DOS 批处理文件可以测试 DOS ERRORLEVEL 的值,并进行适当的处理。
-u
指定 output_file 存储为 Unicode 格式,而不考虑 input_file 的格式。
-R
指定在将货币、日期和时间数据转换为字符数据时,SQL Server ODBC 驱动程序使用客户端设置。
-O
指定为与 isql 的早期版本行为匹配,停用某些 osql 功能。下列功能停用:
EOF 批处理
自动调整控制台宽度
宽消息
同时还将 DOS ERRORLEVEL 的默认值设置为 -1。
本文来自CSDN博客,转载请标明出处:
Ⅱ osql' 不是内部或外部命令,也不是可运行的程序,还有SQL SERVER口令怎么弄
sa的密码如果哪亩忘记了,可以在樱缓耐服务器上,使用操作系统的用户登录sqlserver,然后修改就一下密码就可以了。
第脊春一个错误,可能是因为你的机器上没有安装sqlserver。如果你安装了,那把目录转换到安装目录下,才运行osql
Ⅲ 为什么我在输入dos指令后总显示" 不是内部或外部命令,也不是可运行的程序或批处理文件
你需要一个path命令引导,
CMD下默中猛认只加载最基本的DOS命令,
换弯弯句话说,电脑压根不知道你这个osql.exe在哪里。
也有可能是命令格式不埋培闷正确,dos下可以打 命令加/?查看具体用法。
Ⅳ 如何在SQL服务器上重置SA密码 4种方法来在SQL服务器上重置SA密码
目录方法1:方法1:从命令提示符中更改SA密码1、打开命令提示符,前往SQL服务器,输入命令osql _L。2、复制SQL服务器全名,输入:OSQL -S <这里输入服务器的名称> -E。3、执行以下4、完成重置。方法2:方法2:使用SSMS重置SA密码1、打开SSMS管理器。2、用windows身份验证连接SQL服务器。3、打开后,在左侧的对象资源管理器中展开"安全性",在登录名下找到"sa"用户。4、在"密码"和"确认密码"栏前方输入新密码,点击确定。方法3:方法3:使用SQL密码恢复工具重置SA密码1、运行SQL密码恢复程序,然后点击"打开"来导入master.mdf文件。2、选择SA用户名来重置忘记的SA密码,或选择其它忘记密码的用户名。3、输入新密码,点击"确定"。方法4:方法4:当SA已被禁用时1、这是一种额外的复杂方案。2、使用命令行的-m标签命令,以单个用户身份打开SQL服务器。3、以管理员身份运行。4、在服务器身份页面,选择系统管理员,然后重置密码。SA用户(“系统管理员”的简称)是MS SQL服务器的管理者账户。如果忘记服务器管理员账户的密码该怎么办呢?难道要重新安装SQL服务器或放弃所有数据内容吗?不管出于何种原因,如果你忘记了服务器的管理账户密码,并且被告知你无权进行更局滚改,这篇文章将教给你几种重置SQL服务器SA密码的方法。
方法1:方法1:从命令提示符中更改SA密码
1、打开命令提示符,前往SQL服务器,输入命令osql _L。
2、复制SQL服务器全名,输入:OSQL -S <这里输入服务器的名称> -E。
3、执行以下命令:sp_password NULL, ‘<这里插入新密码>’, ’sa’
4、完成重置。
方法2:方法2:使用SSMS重置SA密码
1、打开SSMS管理器。它通常位于开始菜单 -> 所有程序 -> "Microsoft SQL Server 2005" -> 找到"SQL Server Management Studio"程序。
2、用windows身份验证连接SQL服务桐脊余器。
3、打开后,在左侧的对象资源管理器中展开"安全性",在登录名下找到"sa"用户。右键点击它,选择属性。
4、在"密码"和"确认密码"栏前方输入新密码,点击确定。
方法3:方法3:使用SQL密码恢复工具重置SA密码
1、运行SQL密码恢复程序,然后点击"打开"来导入master.mdf文件。
2、选择SA用户名来重置忘记的SA密码,或选择其它忘记密码的用户名。点击"更改密码"来重置密码。
3、输入新密码,点击"确定"。
方法4:方法4:当SA已被禁用时
1、这是一种额外的复杂方案。有时候你会遇到SA被禁用的情况。
2、使用命令行的-m标签命令,以单个用户身份打开SQL服务器。
3、以管理员身份运行。
4、在服务器身份页面,选择系统管理员,然后重置密码。
小提示 重置SA密码最简单有效的方法是使用SQL密码恢复工具。你可以使用几种SQL密码恢复工具来成功重野蠢置SQL的SA密码。如,“SQL Password Geeker”程序、“SQL Password Rescuer”程序。
Ⅳ osql工具如何使用
osql是一种命令行工具,可以交互式地执行Transact-SQL脚本语句。如果想使用osql,用户必须理解Transact-SQL这种脚本语言,并且熟悉如何在命令行方式下执行脚本语句。 osql使用SQL Server ODBC(开放式数据库连接)同服务器进行通讯,它会受到ODBC应用程序编程接口(APl)的影响和限制。 你可以直接在操作系统中运行osql命令行工具,也从批文件或命令行运行这个程序。一个批是一组Transact-SQL语句,它们被一同提交给SQL Server并作为一个组语句执行。运行osql时有一些选项,这些选项是区分大小写的。 1、使用交互模式(Interactive Mode) osql命令行工具接受Transact-SQL语句并把它余历槐们交互式地传给SQL Server。返回的结果将按格式显示在显示器屏幕上。使用GO语句执行当前输入缓冲区中的Transact-SQL语句。使用Qtilt或EXIT语句从osql命令行工具中退出。 2、使用脚本运行模式(Script Execution Mode) 输入单行Transact-SQL语句并执行,用户通过这种方式提交一个osql批,也可以给osql指定一个包含Transact-SQL语句的脚本文件。语句执行后的输出结果通常被保存烂盯在一个文本文件( *.txt)中,但输出结果也可以被显示在屏幕上。 Osql的部分语法如下: osql [-Sserver_name] [-E] [-U login_id] [-P password] [-I input_file] [-O output_file][-?] 注意:osql语句中的参数是区分大小写的。 参数 说明 -S server_name 指定将要连接的SQL Server服务器名称。server_name是网络上安装了SQL Server的计算机名。如果你想从网络上远程执行osql,一定要提供这个参数。 -E 使用可信任连接,此时不需提供口令。 -U login_id 用户的登录ID。这个登录名是区分大小写的。如果既没有使用-U,也没使用-P,SQL Server使用当前登录的用户账号,而且不需输入口令。
-P password 用户指定的口令。如果没有使用-P选项,osql将会提示你输入一个口令;如果-P出现在命令的结尾,并且没有指定任何口令,osql将使用默认的口令NULL。口令也区分大小写。如果既没有使用-P,也没有使用-U,SQL Server使用当前登录的用户账号信息,并且不需要输入口令。 - i input=file 指定一个包含一竖友组Transact-SQL语句的批脚本文件,或者一个存储过程。 -o output_file 指定由osql返回的输出文件。如果使用“-o”指定了输出文件,且输入文件是Unicode型文件,则输出文件也是Unicode文件。
Ⅵ sql2005如何导入脚本
1. SQL server2008 导入超大SQL脚本文件(超过10);
2. 采用SQLManagement 查询工具不能打开,所以使用osql在doc命令下执行;
3. osql 用法:
4. 执行SQL脚本文件。-S:sqlserver服务器名称 -U:数据库登陆账号 -P:数据库登陆密码 -i:sql 脚本文件的路径
5. 如果想将运行结果定向到一个文件,添加 –o output_file 参数
output_file 是输出文件及其完整路径。
如想消除输出结果中的编号和提示符号,请向上述命令中添加 -n 选项。例如:
osql -E -i input_file -o output_file -n
6. 执行结果可友态以查看输好禅源出文档。
7. osql 执行SQL语句,输入osql-S:sql server服务器名称 -U:数据库登陆账号
然后袭虚输入密码,就可以输入SQL语句了(注意大小写)。如下图
8. 输入exit退出
Ⅶ SQL server2008 安装完成后无isql工具,只有osql, 环境变量没有问题,默认路径下也无isql.exe 怎么解决
对比它们的使用帮助,大部分是一样的。红色部分即它们之间的区别,可以忽略。
下面是一份完整的OSQL的参数,使用方法 :
-L
列出在本地配置的服务器和在网络上广播的服务器的名称。
-U login_id
用户登录 ID。登录 ID 区分大小写。
-P password
是用户指定的密码。如果未使用 -P 选项,osql 将提示输入密码。如果在命令提示符的末尾使用 -P 选项而不带密码,osql 使用默认密码 (NULL)。密码区分大小写。
OSQLPASSWORD 环境变量使您得以为当前会话设置默认密码。因此,不需要通过硬编码来在批处理文件中设置密码。
如果没有为 -P 选项指定密码,osql 首先检查 OSQLPASSWORD 变量。如果未设置值,osql 使用默认密码 (NULL)。以裤宏下示例在命令提示符处设置 OSQLPASSWORD 变量,然后访问 osql 实用工具:
C:/>SET OSQLPASSWORD=abracadabra
C:/>osql
-E
使用信任连接而不请求密码。
-S server_name[/instance_name]
指定要连接的 Microsoft SQL Server 2000 实例。在该服务器上指定 server_name 以连接到 SQL Server 的默认实例。在该服务器上指定 server_name/instance_name 以连接到一个已命名的 SQL Server 2000 的实例。如果未指定服务渗纯凯器,osql 将连接到本地计算机上的 SQL Server 默认实例。从网络上的远程计算机执行 osql 时,此选项是必需的。
-H wksta_name
是工作站名称。工作站名称存储在 sysprocesses.hostname 中并由 sp_who 显示。如果未指定此选项,则采用当前计算机名称。
-d db_name
启动 osql 时发出一个 USE db_name 语句。
-l time_out
指定 osql 登录超时之前的秒数。登录到 osql 的默认超时为 8 秒。
-t time_out
指定命令超时之前的秒数。如果未指定 time_out 值,则命令不会超时。
-h headers
指定要在列标题之间打印的行数。默认为每一查询结果集打印一次标题。用 –1 指定不打印标题。如果使用 -1,则在参数和设置之间一定不能有空格(可以是 -h-1,不能是 -h –1)。
-s col_separator
指定列分隔符字符,其默认为空格。若要使用对操作系统有特殊含义的字符(例如 | ; & < >),请将该字符用双引号 (") 引起来。
-w column_width
允许用户设置屏幕输出的宽度。默认为 80 个字符。丛唤当输出行达到其最大屏幕宽度时,会拆分为多个行。
-a packet_size
使您得以请求不同大小的数据包。packet_size 的有效值在 512 到 65535 之间。osql 的默认值为服务器的默认值。数据包大小的增加可以提高较大脚本执行的性能,在这种执行中 GO 命令之间 SQL 语句的数量很重要。Microsoft 的测试表明 8192 是大容量复制操作典型的最快设置。可以请求更大的数据包大小,但如果请求不能得到批准,则 osql 默认为服务器的默认值。
-e
回显输入。
-I
设置 QUOTED_IDENTIFIER 连接选项为开启。
-D data_source_name
连接到用 Microsoft SQL Server 的 ODBC 驱动程序定义的 ODBC 数据源。osql 连接使用该数据源中指定的选项。
说明 该选项不适用于其它驱动程序定义的数据源。
-c cmd_end
指定命令终止符。默认情况下,通过单独在一行中输入 GO 来终止命令并将其发送到 SQL Server 2000。在重置命令终止符时,不要使用对操作系统有特殊含义的 Transact-SQL 保留字或字符,无论其前面是否有反斜杠。
-q "query"
启动 osql 时执行查询,但是在查询完成时不退出 osql。(注意查询语句不应包含 GO)。如果从批处理文件中发出查询,请使用 %variables 或环境 %variables%。例如:
SET table = sysobjects
osql /q "Select * from %table%"
将查询用双引号引起来,将查询中嵌入的任何内容用单引号引起来。
-Q "query"
Ⅷ 用计划任务做定时执行sql语句,总是说osql不是内部命令,是什么原因
osql 应该是一个 exe 程咐仿序吧?
C:\Users\zqwang>osql -E -S "localhost\SQLEXPRESS"
1> use test
2>肢饥 go
会不会是你的 PATH 没有设置好?衡饥纤
Ⅸ 高分!如何禁用系统中的某条命令
看来分不够啊,没人回答啊,呵呵......
我来说说。
cmd命令可以整体禁用,但基本上弊大于利,不主张使用。
禁用指定的dos命令,又不可能。
折中的办法是创建宏,把要禁用的dos命令转向到别的命令上:
重定义dir命令为清屏命令,在命令行上输入:doskey dir=cls(回车)
这时,你再执行dir看看?
用记事本编辑C盘根目录里的autoexec.bat,没有芦谨凯就建立一个,内容如下:
doekey =cls
doskey osql=cls
存盘退出。
重新启动电脑,进入命令行状态,你会发现、osql命令不好用了,屏幕一闪就什么都没有了。
当然,这个办法对内部命令比较好用,但对于外部命令就不太好用,如输入osql.exe(回车),osql命令又被打开了,很失望吧?
想要彻底禁用外部命令,首先你要控制好该电脑的系统管理员用户,系统管理员组的所有用户都由你来控制才行,别的用户都是受控用户,否则,无晌滑论你怎么设置都没用。
方法一:搜索到osql.exe文件,按右键,选“运行方式”,指定该文件的授权用户。
方法二:陪唤为每一个除你之外的用户配置组策略。打开组策略编辑器gpedit.msc,“用户配置”—“管理模板”—“系统”—“不要运行指定的windows程序”设置为启用,将“osql.exe”添加进去。
你试试看吧。
Ⅹ osql的问题
没指定服务器吧。-s server
另外,用sqlcmd比较好