SQL Server教程 - SQL Server主要的命令行管理工具
更新记录
转载请注明出处。
2022年8月31日 发布。
2022年8月31日 从笔记迁移到博客。
SQL Server主要的命令行管理工具
bcp
在SQL Server实例和用户指定格式的数据文件之间进行数据复制
dta
数据库引擎优化顾问
dtexec
用于配置管理SQL Server 的Integration Services
rs
管理和运行报表服务器脚本
rsconfig
对报表服务的管理
dtutil
用于管理SSIS包
osql
输入和执行T-SQL语句,该工具通过ODBC进行连接数据库
sqlcmd
输入和执行T-SQL语句,该工具通过OLE DB进行连接数据库
sqlmaint
包含一组用于管理数据库维护的工具,比如备份
sqlsrvr
命令行下执行SQL Server实例的启动、停止、暂停、继续
ssms
命令行下打开SSMS工具
tablediff
比较两个表的数据一致性,多用来排除复制过程中的故障
Sqlcmd
最新版本的 sqlcmd 工具#
https://docs.microsoft.com/zh-cn/sql/tools/sqlcmd-utility?view=sql-server-ver15
sqlcmd 会话模式#
在命令提示符下键入 sqlcmd,按 Enter
现在,您已与计算机上运行的默认 SQL Server 实例建立了可信连接
1> 是 sqlcmd 提示符,可以指定行号,每按一次 Enter,该数字就会加 1
若要结束 sqlcmd 会话,请在 sqlcmd 提示符中键入 EXIT
基础命令
查看版本信息#
sqlcmd -?
查看帮助信息#
sqlcmd -?
登录#
登录
sqlcmd -S localhost -U sa -P '123456';
登录并指定数据库
sqlcmd -S localhost\sqlserver_name -d database_name
退出#
quit
执行SQL文件#
执行脚本文件
sqlcmd -S localhost -U sa -P '123456' -i "G:\test.sql";
执行脚本文件并设置输出到指定文件
sqlcmd -S localhost -U sa -P '123456' -i "G:\t.sql" -o "G:\t2.txt";
注意:这里的路径要使用反斜线。
执行SQL字符串#
sqlcmd -S localhost\sqlserver_name -d database_name
-Q "SELECT * FROM [table_name]"
SQL Server 数据库管理
连接SQL Server LocalDB#
sqlcmd -S "(localdb)\MSSQLLocalDB"
查看数据库基本信息#
use master
exec sp_helpdb [PandaTest]
查看所有数据库#
use master
exec sp_helpdb
查看数据库中的所有对象#
USE [PandaTest]
EXEC sp_help
查询数据文件或日志文件当前存放路径#
注意:先要进入指定的数据库
SELECT physical_name FROM sys.database_files
获取数据库的逻辑名和日志逻辑名#
注意:先要进入指定的数据库
方式一
select file_name(1),file_name(2)
方式二
SELECT name FROM sys.database_files
修改数据的逻辑名或者日志逻辑名#
ALTER DATABASE [database_name] MODIFY FILE ( NAME = database_name, NEWNAME = new_database_name )
ALTER DATABASE [database_name] MODIFY FILE ( NAME = database_nameb_log, NEWNAME = new_database_name_log )
SQL Server 表管理
查看指定的表详细信息#
USE [PandaTest]
EXEC sp_help [PandaTable]
SQL Server 账户管理
创建登录账户
CREATE LOGIN catalog_srv WITH PASSWORD = 'P@ssw0rd';
SQL Server 用户管理
创建用户
CREATE USER user_name;
为用户增加角色
EXEC sp_addrolemember N'db_owner', N'username';
SQL Server 备份和恢复
备份数据库#
backup database database_name to disk='E:\backup\database_name.bak'
恢复数据库#
restore database database_name from disk='D:\backup\database_name.bak'
with
move 'database_name' to 'D:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA\database_name.mdf',
move 'database_name_log' to 'D:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA\database_name_log.ldf'
go
恢复数据库并修改数据库的名称
restore database update_database_name from disk='E:\backup\database_name.bak'
bcp 命令
导出表#
bcp MDataPort.dbo.Recording out E:\Backup\recording.bcp -S .\sqlexpress -T -c
指定时间戳
bcp "select * from MDataPort.dbo.Recording where Timestamp >= '2019-02-01 00:00:00'" queryout E:\Backup\recording_20190201.bcp -S .\sqlexpress -T -c
指定列
bcp "select Timestamp from MDataPort.dbo.Recording" queryout E:\Backup\recording_Timestamp.bcp -S .\sqlexpress -T -c
导入整张表#
bcp MDataPort.dbo.Recording in E:\Backup\recording.bcp -S .\sqlexpress -T -c
作者:重庆熊猫
出处:https://www.cnblogs.com/cqpanda/p/16641740.html
版权:本作品采用「不论是否商业使用都不允许转载,否则按3元1字进行收取费用」许可协议进行许可。
本文来自博客园,作者:重庆熊猫,转载请注明原文链接:https://www.cnblogs.com/cqpanda/p/16641740.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?