无法将“ sqlcmd”识别为内部或外部命令


2

(我知道这并不是真的要在这里使用,但是我不能在Stack Exchange上询问questios)

我正在创建一个批处理文件,并且收到以下错误消息:'sqlcmd'无法识别为内部或外部命令,可操作程序或批处理文件。

我知道为什么我的代码是错误的,但是不知道如何解决。.我没有MYSQL,我没有使用Microsoft SQL Server 2005,我正在使用SQLyog,没有sqlcmd,所以我该怎么办将我的代码更改为?

这是我的代码:

@echo off
cls

set /p SName=Server Name :
set /p UName=User Name : root
set /p Pwd=Password :
set /p DbName=Database Name : test

set /p choice=ARE YOU SURE TO EXECUTE SCRIPTS in %DbName% (y/n) ?

if '%choice%'=='y' goto begin
goto end

:begin
if exist _dataimport.txt del _dataimport.txt

@echo on

sqlcmd -S %SName% -U %UName% -P %Pwd% -d %DbName% -I -i "UDDs"\UDDs.sql >> _dataimport.txt 2>&1



@notepad _dataimport.txt


:end

我很困惑,您说“我还没有MYSQL”,但是“ SQLyog是功能最强大的MySQL管理器和管理工具,结合了MySQL Administrator,phpMyAdmin和其他MySQL Front Ends和MySQL GUI工具的功能。” 如果不使用MySQL,为什么/如何使用SQLyog?
2014年

我的意思是MYSQL程序,对不起,我不好
SomeAmbigiousUserName 2014年

咦?MySQL是一个数据库。SQLyog是MySQL管理/编辑工具。您需要访问MySQL服务器,SQLyog才有用。如果您有可用的MySQL服务器,则应该可以使用SQLCmd。如果MySQL安装在您的本地计算机上,则它可能存在,但不在路径中。您是否在硬盘上搜索了SQLCmd?
2014年

我不记得在安装MySQL时看到任何东西,而且我也无济于事。(这是在我的硬盘上的搜索)
SomeAmbigiousUserName 2014年

“我不记得在安装MySQL时看到任何东西”,所以您是否安装MySQL?如果是,您安装了什么版本?这点奥尤语需要一个MySQL的副本sqlcmd.exe。如果安装中未包含它,则可以从MySQL站点获取它。
2014年

Answers:


3

假设您已经正确安装了SQL软件,如果命令提示符返回以下内容:

软件名称)未被识别为内部或外部命令,可操作程序或批处理文件。

这意味着您的软件可能不会放在%PATH%环境变量定义的文件夹中。使用后者,可以撤消可执行应用程序而无需定义其完整路径。然后,要解决此问题,您可以:

  1. .exe在批处理脚本中定义文件的完整路径
  2. 或将.exe文件移到由定义的目录中%PATH%

您可以看到此环境变量定义的目录列表,该目录set从终端调用命令或打开Control Panel > System > Advanced > Environment Variables

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.