通过osql连接sqlserver

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>

sqlserver2000查询分析器只支持64k脚本,所以一般通过insert导入数据的.sql脚本就根本是不可能的事了,通过搜索发现可以通过 osql命令连接脚本文件并且执行脚本。
用法: osql                   [-U 登录 ID]          [-P 密码]
  [-S 服务器]                [-H 主机名]           [-E 可信连接]
  [-d 使用数据库名称]        [-l 登录超时值]       [-t 查询超时值]
  [-h 标题]                  [-s 列分隔符]         [-w 列宽]
  [-a 数据包大小]            [-e 回显输入]         [-I 允许带引号的标识符]
  [-L 列出服务器]            [-c 命令结束]         [-D ODBC DSN 名称]
  [-q "命令行查询"]          [-Q "命令行查询" 并退出]
  [-n 删除编号方式]          [-m 错误级别]
  [-r 发送到 stderr 的消息]  [-V 严重级别]
  [-i 输入文件]              [-o 输出文件]
  [-p 打印统计信息]               [-b 出错时中止批处理]
  [-X[1] 禁用命令,[退出的同时显示警告]]
  [-O 使用旧 ISQL 行为禁用下列项]
      <EOF> 批处理
      自动调整控制台宽度
      宽消息
      默认错误级别为 -1 和 1
  [-? 显示语法摘要]

命令行操作有时比在图形界面下用鼠标还高效,所以高手常用命令行操作,下面简介SQL Server 命令行工具 isql 和 osql。

isql 实用工具使您得以输入 Transact-SQL 语句、系统过程和脚本文件;并且使用 DB-Library 与 SQL Server 2000 进行通讯。

osql 实用工具使您得以输入 Transact-SQL 语句、系统过程和脚本文件。该实用工具通过 ODBC 与服务器通讯。

&#9670; 信任连接:
>isql -E

>osql -E

&#9670; 察看所有数据库:
use master
exec sp_helpdb
GO

&#9670; 察看数据库 pubs:
use master
exec sp_helpdb pubs
GO

&#9670; 察看数据库 pubs 中的对象:
USE pubs
EXEC sp_help
GO
相当于 Oracle 的 SELECT table_name FROM user_objects;

&#9670; 察看数据库 pubs 中的表 employee 结构:
USE pubs
EXEC sp_help employee
GO
相当于 Oracle 的 SQL*PLUS 中的 DESC employees

&#9670; SELECT 语句:
USE pubs
SELECT * FROM employee
GO

&#9670; 当使用单引号分隔一个包括嵌入单引号的字符常量时,用两个单引号表示嵌入单引号,例如:
SELECT  'O''Leary'
GO

&#9670; 用7.个双引号表示嵌入双引号,例如:
SELECT  'O"Leary'
GO

&#9670; SQL Server 数据库信息查询
use master
exec sp_helpdb pubs
GO
或:
use master
SELECT name, dbid FROM sysdatabases
GO

&#9670; 查数据库对象 (相当于 Oracle 的 SELECT * FROM user_tables;)
USE pubs
EXEC sp_help
GO

use master
SELECT name, id FROM pubs.dbo.sysobjects WHERE type='U'
GO

&#9670; 查字段 (相当于 Oracle 的 SQL*PLUS 中的 DESC employees )
USE pubs
EXEC sp_help employee
GO

&#9670; 查看指定
USE pubs
SELECT name, id, xtype, length
FROM syscolumns WHERE id=277576027
GO

USE pubs
SELECT *
FROM syscolumns WHERE id=277576027
GO

&#9670; 查看数据类型名字的定义:
SELECT name, xtype
FROM systypes
GO

&#9670; 从命令行启动“查询分析器”
>isqlw

&#9670;  isql命令 描述
 GO   执行最后一个 GO 命令之后输入的所有语句。
 RESET   清除已输入的所有语句。
 ED   调用编辑器。
 !!   command 执行操作系统命令。
 QUIT 或 EXIT( ) 退出 isql。
 CTRL+C   不退出 isql 而结束查询。
仅当命令终止符 GO(默认)、RESET、ED、!!、EXIT、QUIT 和 CTRL+C 出现在一行的开始(紧跟 isql 提示符)时才可以被识别。isql 忽视同一行中这些关键字后输入的任何内容。

posted @ 2011-06-07 08:51  netcorner  阅读(850)  评论(0编辑  收藏  举报