sql执行cmd
⑴ sql语句执行cmd.ExecuteScalar()时出现 ORA-01036: 非法的变量名/编号 错误!
改为
int p = Convert.ToInt32(SqlHelper.ExecuteScalar("select count(*) from AN_TO_AGENCY t where t.gw_time between to_date(:stTime,'yyyy-MM-dd HH24:mi:ss') and to_date(:edTime,'yyyy-MM-dd HH24:mi:ss')", new OracleParameter(":stTime", dp_startTime.Value.ToString()), new OracleParameter(":edTime", dp_endTime.Value.ToString())));
把sql语句里面的参数的单引号去掉了,不应该带单引号。
⑵ 如何从执行sqlcmd脚本
在dos下运行 :
cmd /c osql -S"127.0.0.1" -U"sa" -P"123" -d"Test" -i"E:\资料\学习\MSSQL\Dos执行文件\test.sql"
-S :数据库IP地址
-U:用户名
-P:密码
-d:数据库名
-i :数据库文件
注意:在没有装有数据库的情况下 , 你的系统中可能没有osql工具的环境 , 此时我们只需要将 OSQL.EXE和osql.rll两个文件拷到c:\window\system32目录下即可
⑶ sqlcmd是用来做什么的
是服务器名。
服务器是一种高性能计算机,作为网络的节点,存储、处理网络上的数据、信息,因此也被称为网络的灵魂。网络终端设备如家庭、企业中的微机上网,获取资讯,与外界沟通、娱乐等,也必须经过服务器。服务器名称是服务器在网络中的唯一标识。
唯一标识网络上的某台服务器计算机的名称。 SQL Server应用程序可以通过仅指定服务器名称而连接到 SQL Server 的默认实例。SQL Server 应用程序在连接到服务器上的某个命名实例时必须既指定服务器名称又指定实例名称。
⑷ cmd直接执行sql脚本
以 mysql -h localhost -uroot -ppassword 方式直接将密码写入快捷方式,
登陆可以成功,但是如果使用 -e 参数执行语句,会出现
Warning: Using a password on the command line interface can be insecure 错误 ,
在MySQL 5.6.6之后可以使用 mysql_config_editor ,它可以把账户密码写入 */.mylogin.cnf 并加密
登入 MySQL Serverin 文件夹,执行
mysql_config_editor set --login-path=xxx --host=127.0.0.1 --user=root --password
--login-path 的值只是一个名字,可以随便写,
回车,然后输入密码,就完成了账户信息的写入
mysql_config_editor print --all
mysql --login-path=xxx
试一下,应该可以登入了
创建快捷方式,快捷方式的
目标:
"C:Program FilesMySQLMySQL Server 5.7inmysql.exe" "--defaults-file=C:ProgramDataMySQLMySQL Server 5.7my.ini" --login-path=try -e "SOURCE C:/Users/Desktop/main.sql;"
注意 -e 后面 路径中的反斜杠,写错了是无法运行的
起始位置:
"C:Program FilesMySQLMySQL Server 5.7in"
⑸ 如何使用sqlcmd在批处理脚本中执行SQL
使用sqlcmd可以在批处理脚本中执行SQL。虽然这个命令的参数很多,但幸运的是,我们不需要全部理解,在这里简要介绍以下几个: { -U login_id [ -P password ] } | –E trusted connection }] 如果指定了-E就不需要指定用户名密码,当然指定了用户名密码就不用-E了; -S server_name [ \ instance_name ] 数据库服务器,如果不在本机的话必须指定; -d db_name 数据库名字,必须的; [ -i input_file ] [ -o output_file ] sql存在文件里的话用-i,输出到文件用-o; [ -q "cmdline query" ] [ -Q "cmdline query" and exit ] 输入是简单的sql,不用文件,推荐用-Q,如果你执行完sqlcmd还需要执行别的动作的话; [ -W remove trailing spaces ] 删除多余的空格,结果会更紧凑。 当我们在真正的脚本中执行sql时,通常需要传入和输出变量。 传入变量比较简单,如下所示: sqlcmd -d test -Q "select * from dbo.Investment where investor=$(x)" -v x='IBM' -W 这个语句从test数据库的Investment表中选出investor等于x的所有行,注意到变量x被包含在${}中。 然后用-v定义了x的值,'IBM'。 -W确定输出的结果不包含多余的空格。 x的值如果没有在sqlcmd中设定,系统会试图从别的地方去寻找,可能的地方包括,系统环境变量,用户环境变量,以及用在sqlcmd之前用set设定的变量值。 如果你的数据里确实包含${},那么你并不希望进行变量的替换,使用-x选项可以禁止变量的替换。 有些时候,你还希望能获得sql执行结果并保存到变量中。比如你们的日志系统每天都在产生日志文件,你要执行一个脚本来处理这些日志文件并存到数据库中。在处理之前,你必须读取数据库以确定上次处理到那一天了。你期望这样能解决你的问题: sqlcmd -d test -Q "select ${x}=max(date) from dbo.logDates " -W 但这样并不工作。因为sqlcmd并不提供输出变量。 不过你可以这样做: sqlcmd -d test -Q "declare @x nvarchar(8);select @x=max(date) from dbo.logDates;print @x; " -W 这样你就可以得到一个干干净净的数字,而不会包含列名和其他信息。 接着你将上述结果导入到一个文件里: sqlcmd -d test -Q "declare @x nvarchar(8);select @x=max(date) from dbo.logDates;print @x; " -W 1.txt 现在到了最关键的一步,将文件的内容写入到变量里: set /P myvar=<1.txt /p表明这个变量myvar的值需要用户输入; <1.txt表明从1.txt中读入而不是从其他地方读入。 这样,我们就巧妙的把sql执行的结果写入到变量里了。
⑹ sqlserver怎么执行.sql文件
可以在cmd窗口中执行如下命令执行Sql文件:
osql -S 127.0.0.1 -U sa -P sa -i d:\test.sql
简单说明:osql为SQL Server的命令,要在cmd中执行该命令,一般安装完SQL
Server后该命令对应的路径会自动添加到系统环境变量中。 -S 表示要连接的数据库服务器 -U表示登录的用户ID,-P表示登录密码
-i表示要执行的脚本文件路径。
⑺ cmd 执行sql脚本,该怎么处理
1、微软的SQL
Server数据库系统带有一个工具,工具名为SQLCMD.EXE。
2、ORACLE数据库也带有一个工具,工具名为sqlplus.exe。
3、ORACLE数据库:在CMD窗口下,sqlplus
用户名/密码@数据库,进行登录,然后把脚本文件拖进去就好。
4、SQL
Server数据库系统下,SQLCMD的用法,请在CMD窗口下键入
sqlcmd.exe
/?去查看。
5、更多详尽的资料,请网络一下“SQLCMD”或“sqlplus.exe”。
其它的数据库,有些支持,有些不支持,请针对性的搜索或提问。
⑻ sqlcmd报错出现小方块
cmd下直接输入sqlcmd会提示 错误:
HResult 0x2,级别 16,状态 1
命名管道提供程序: 无法打开与 SQL Server 的连接 [2].
Sqlcmd: 错误: Microsoft SQL Server Native Client 10.0 : 与 SQL Server 建立连接时
,发生了与网络相关的或特定于实例的错误。找不到或无法访问服务器。请检查实例名称是
否正确以及 SQL Server 是否已配置为允许远程连接。有关详细信息,请参阅 SQL Server
联机丛书。。
Sqlcmd: 错误: Microsoft SQL Server Native Client 10.0 : 登录超时已过期。
最后执行sqlcmd时加上 用户名 密码 机器名\实例名后 能够正常连接。
命令如下:
sqlcmd -U 用户名 -P 密码 -S 机器名\实例名
eg: sqlcmd -U sa -P 123456 v0A-202-10-102\SQL
执行后 出现 1> 提示符 表示已经与 sql server 实例建立了可信任连接。
sqlcmd 介绍:
1> 是 sqlcmd 提示符,没按一次enter,该数字就会加1;若要结束sqlcmd会话,请在提示符处输入exit 。 每个一条sql语句后面要加go 命令,否则 只是保存在缓冲区中而没有执行。可以使用sqlcmd 运行Transact-sql 脚本文件,
保存在c盘下,键入 sqlcmd -S 机器名\实例名 -i c:\脚本文件名 按enter键
将输出保存为一个文件 可以 在 上面的 命令后 加上 -o c:\保存的文件名 按enter
⑼ 在cmd中,怎么连接和执行sqlserver
1、打开CMD命令界面。
⑽ cmd怎么执行sql脚本
先使用cmd连接并打开数据库,然后才能执行SQL脚本。