标签: osql

文件的目录查找失败,出现操作系统错误3(系统找不到指定的路径.)

我试图从一个SQL服务器()重新创建一个数据库(MyDB )到另一个(目标).位于我的本地计算机上,是SQL Server 2014. 目标位于远程计算机上,它是SQL Server 2012.以下是我采取的步骤:

  1. 在我的本地机器上,我转到SQL Server Management studio,右键单击MyDB,然后转到Tasks - > Generate Scripts.
    1. 在那里我选择"脚本整个数据库和所有数据库对象".
    2. 我单击Next并在下一页的Advanced下,选择"Schema and data".
    3. 这会生成一个包含MyDB定义的SQL文件(scripts.sql).
    4. 然后我使用以下osql命令在Target上重新创建数据库:

osql -S target -d master -E -i scripts.sql -o output.log

  1. 执行完成后,我在日志文件"output.log"中收到此错误:

1> 2> 1> 2> 3> 4> 5> 6> 7> 8>消息5133,级别16,状态1,服务器目标,行2目录查找文件"C:\ Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\MyDB.mdf"因操作系统错误3而失败(系统找不到指定的路径.).消息1802,级别16,状态1,服务器目标,行2 CREATE DATABASE失败.无法创建列出的某些文件名.检查相关错误.1> 2>消息5011,级别14,状态5,服务器目标,行1用户无权更改数据库'MyDB',数据库不存在,或者数据库未处于允许访问检查的状态.消息5069,级别16,状态1,服务器目标,行1 ALTER DATABASE语句失败.

以下是"scripts.sql"的前几行:

USE [master]
GO
/****** Object:  Database [MyDB]    Script Date: 4/12/2016 4:30:20 PM ******/
CREATE DATABASE [MyDB]
 CONTAINMENT = NONE …
Run Code Online (Sandbox Code Playgroud)

sql database sql-server migration osql

8
推荐指数
1
解决办法
2万
查看次数

通过osql.exe运行脚本的问题

我尝试以这种格式运行我的软件的更新脚本:

osql.exe -i"path\to\script"-U"user"-P"Password"-S"sqlserver的位置"-d"数据库名称"-n -b

大多数脚本都采用相同的格式,并且都以GO结尾.很多它们运行得很好,但随机脚本一直返回错误而不会运行.错误是"第1行'∩'附近的语法不正确.脚本可能就像INSERT一样简单,但总是出现这个错误.我似乎无法在网上找到任何能够帮助我的东西.谁能提供任何见解?

脚本可以手动运行.另外一件有趣的事情是,如果我创建一个新的文本文档并将脚本粘贴到新文件中并将其更改为.sql并运行该文件,那么它的工作正常.我只是为所有"破碎"的脚本执行此操作,但它会继续发生在新的脚本上,最终会发生在已更改的脚本上.

sql osql

4
推荐指数
1
解决办法
2603
查看次数

有没有人对OSQL有快速的"欺骗作弊"或"命令行参考"?

我的一个朋友抱怨他的系统管理员设置的某些安全设置禁止SQL管理工作室快递.我建议使用OSQL

替代文字

我的问题是

我需要一些基本的命令,如附加,分离和处理SQL Express数据库的最佳方式.有任何想法吗?

sql osql

3
推荐指数
1
解决办法
205
查看次数

标签 统计

osql ×3

sql ×3

database ×1

migration ×1

sql-server ×1