电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SqlServer數據庫腳本執行命令行指令方式

瀏覽:8日期:2023-09-28 21:00:59
目錄SqlServer腳本執行命令行指令SqlServer命令行的使用總結SqlServer腳本執行命令行指令

1.用戶登錄,首先打開命令提示符窗口,假設:用戶是testor,密碼是123,輸入如下

C:\Windows\System32>osql -S 127.0.0.1 -U testor -P 1231>

2.查看數據庫,可以輸入如下:

1> select name from sysdatabases2> go

3.創建數據庫,輸入如下

1> create database testdb12> go

4.執行sql文件,先查找sqlserver的工具目錄,我的是C:\Program Files\Microsoft SQL Server\150\Tools\Binn,在該目錄地址欄輸入cmd,

再執行以下腳本,其中-d selecteddb 本來是選擇數據庫,不過我這個數據庫版本貌似沒有起效

sqlcmd -S . -U 用戶名 -P 密碼 -d selecteddb -i E:\somesql.sql

好了,sqlserver的分享就這樣了,反正覺著沒有mysql或者mariadb好用,湊合用吧

SqlServer命令行的使用

1.連接sqlserver

sqlcmd -S localhost\sqlserver_name

2.連接數據庫

sqlcmd -S localhost\sqlserver_name -d database_name

3.執行SQL語句

sqlcmd -S localhost\sqlserver_name -d database_name -Q 'SELECT * FROM [table_name]'

4.執行SQL腳本文件

sqlcmd -S localhost\sqlserver_name -d database_name -i 'SQL file path'

5.將查詢的結果集輸出到文件

sqlcmd -S localhost\sqlserver_name -d database_name -o 'file path'

6.輸出的結果集字符較長,輸出到控制臺和文本都不能顯示完全,需要再加一個參數

sqlcmd -S localhost\sqlserver_name -d database_name -y 1024 -Q 'SELECT * FROM [table_name]'-- 注:此處的“-y”后面的值可以更改,如果還是不能完全顯示,將數值再改大一點

7.查詢sqlserver 命令參數

sqlcmd -?

8.備份數據庫

> sqlcmd -S localhost\sqlserver_name> backup database database_name to disk='E:\backup\database_name.bak'> go

9.通過database_name.bak文件查詢邏輯名

restore filelistonly from disk='path/to/backup/file.bak'

10.恢復數據庫

--(1)先查詢數據庫是否存在,存在就刪除-- a. 查詢數據庫> sqlcmd -S localhost\sqlserver_name> select [Name] from [sysdatabases]> go-- b. 刪除數據庫> drop database database_name(2)恢復數據庫,在進入實例服務的情況下(即sqlcmd -S localhost\sqlserver_name)執行以下語句:> 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

11. 修改數據庫的名稱

> restore database update_database_name from disk='E:\backup\database_name.bak'> with> move 'database_name' to 'E:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA\update_database_name.mdf',> move 'database_name_log' to 'E:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA\update_database_name_log.ldf'> go

12. 獲取數據的邏輯名和日志邏輯名

-- 方式一:select file_name(1),file_name(2)-- 方式二:SELECT name FROM sys.database_files?

13. 修改數據的邏輯名或者日志邏輯名

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 )?

14. 查詢數據文件或日志文件當前存放路徑

SELECT physical_name FROM sys.database_files?

15. bcp 命令的使用

-- 導出整張表bcp MDataPort.dbo.Recording out E:\Backup\recording.bcp -S .\sqlexpress -T -c-- 導入整張表bcp MDataPort.dbo.Recording in 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

16. row_number()分頁

-- 對源表進行重新排序,并增加一個排序的ID字段?select row_number() over(order by id) as ROWID, * ?from [table_name]) ?as new_table_namewhere ROWID > OnePageNum* (CurrentPage-1)--原理:先把表中的所有數據都按照一個rowNumber進行排序,然后查詢rownuber大于40的前十條記錄-- 這種方法和oracle中的一種分頁方式類似,不過只支持2005版本以上的-- Annotation:OnePageNum每頁顯示的記錄數 ? ?-- CurrentPage:當前頁頁數

17. 遍歷表

DECLARE?? @i int ,? @timestamp datetime2(7),? @type tinyint,? @mea uniqueidentifier? SET @i = 1?? WHILE (@i <= (select count(*) from [Recording]))?BEGIN?? select top 1 @mea = [MeasurementID], @timestamp = [Timestamp], @type = [Type] ?from (? ? -- 對源表進行重新排序,并增加一個排序的ID字段? ? ?select row_number() over(order by [MeasurementID], [Timestamp], [Type]) as ROWID, * ?from [Recording]? ? ) ?as new_table_name? ? where ROWID > 1 * (@i-1)? update [Recording] set [Temperature] = (select cast( floor(rand()*100) as int)) where [MeasurementID] = @mea and [Timestamp] = @timestamp and [Type] = @type? SET @i = @i + 1END?GO?

注1:以上連接數據庫的方式都是windows自動驗證連接

注2:若是恢復失敗的話,可以找到sqlserver安裝目錄(即MSSQL11.SQLEXPRESS)右擊屬性---->安全---->查看User權限的權限

注3:sqlserver_name:數據庫服務名database_name:數據庫名 table_name:表名

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: MsSQL 數據庫
相關文章:
主站蜘蛛池模板: 10吨无线拉力计-2吨拉力计价格-上海佳宜电子科技有限公司 | 仓储货架_南京货架_钢制托盘_仓储笼_隔离网_环球零件盒_诺力液压车_货架-南京一品仓储设备制造公司 | LINK FASHION 童装·青少年装展 河南卓美创业科技有限公司-河南卓美防雷公司-防雷接地-防雷工程-重庆避雷针-避雷器-防雷检测-避雷带-避雷针-避雷塔、机房防雷、古建筑防雷等-山西防雷公司 | IWIS链条代理-ALPS耦合透镜-硅烷预处理剂-上海顶楚电子有限公司 lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 求是网 - 思想建党 理论强党 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 四川成都干燥设备_回转筒干燥机_脉冲除尘器_输送设备_热风炉_成都川工星科机电设备有限公司 | QQ房产导航-免费收录优秀房地产网站_房地产信息网 | 东莞市超赞电子科技有限公司 全系列直插/贴片铝电解电容,电解电容,电容器 | 标准件-非标紧固件-不锈钢螺栓-非标不锈钢螺丝-非标螺母厂家-三角牙锁紧自攻-南京宝宇标准件有限公司 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | HEYL硬度计量泵-荧光法在线溶解氧仪-净时测控技术(上海)有限公司 | 常州律师事务所_常州律所_常州律师-江苏乐天律师事务所 | 招商帮-一站式网络营销服务|搜索营销推广|信息流推广|短视视频营销推广|互联网整合营销|网络推广代运营|招商帮企业招商好帮手 | 充气膜专家-气膜馆-PTFE膜结构-ETFE膜结构-商业街膜结构-奥克金鼎 | 伺服电机维修、驱动器维修「安川|三菱|松下」伺服维修公司-深圳华创益 | 安徽净化板_合肥岩棉板厂家_玻镁板厂家_安徽科艺美洁净科技有限公司 | 圆窗水平仪|伊莉莎冈特elesa+ganter| 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 艺术涂料_进口艺术涂料_艺术涂料加盟_艺术涂料十大品牌 -英国蒙太奇艺术涂料 | 广州物流公司_广州货运公司_广州回程车运输 - 万信物流 | 雾度仪_雾度计_透光率雾度仪价格-三恩时(3nh)光电雾度仪厂家 | 西安中国国际旅行社(西安国旅) | 光伏家 - 太阳能光伏发电_分布式光伏发电_太阳能光伏网 | 山东螺杆空压机,烟台空压机,烟台开山空压机-烟台开山机电设备有限公司 | 自动部分收集器,进口无油隔膜真空泵,SPME固相微萃取头-上海楚定分析仪器有限公司 | 旅游规划_旅游策划_乡村旅游规划_景区规划设计_旅游规划设计公司-北京绿道联合旅游规划设计有限公司 | 岩石钻裂机-液压凿岩机-劈裂机-挖改钻_湖南烈岩科技有限公司 | 郑州外墙清洗_郑州玻璃幕墙清洗_郑州开荒保洁-河南三恒清洗服务有限公司 | 锂电池砂磨机|石墨烯砂磨机|碳纳米管砂磨机-常州市奥能达机械设备有限公司 | 气体热式流量计-定量控制流量计(空气流量计厂家)-湖北南控仪表科技有限公司 | 考勤系统_人事考勤管理系统_本地部署BS考勤系统_考勤软件_天时考勤管理专家 | 阜阳成人高考_阜阳成考报名时间_安徽省成人高考网 | PE拉伸缠绕膜,拉伸缠绕膜厂家,纳米缠绕膜-山东凯祥包装 | 智能案卷柜_卷宗柜_钥匙柜_文件流转柜_装备柜_浙江福源智能科技有限公司 | 防堵吹扫装置-防堵风压测量装置-电动操作显示器-兴洲仪器 | 不锈钢电动球阀_气动高压闸阀_旋塞疏水调节阀_全立阀门-来自温州工业阀门巨头企业 | 微型气象仪_气象传感器_防爆气象传感器-天合传感器大全 | 全自动变压器变比组别测试仪-手持式直流电阻测试仪-上海来扬电气 | 安徽合肥项目申报咨询公司_安徽合肥高新企业项目申报_安徽省科技项目申报代理 | 办公室家具_板式办公家具定制厂家-FMARTS福玛仕办公家具 |