建议使用SQLDMO.dll来完成,因为有些脚本你用C#的代码读进来后,用SqlCommand执行可能会有问题。
但是用SQLDMO.dll,如果你的脚本可以在查询分析器执行调用它来执行都没什么问题。
执行大概如下
SQLDMO.SQLServerClass MySqlServer=new SQLDMO.SQLServerClass();
MySqlServer.Connect(strServiceN,strUser,strPassword);
MySqlServer.ExecuteImmediate(strCSQL,SQLDMO.SQLDMO_EXEC_TYPE.SQLDMOExec_Default,strCSQL.Length);
MySqlServer.DisConnect();
当然,如果你有多个脚本,可以读进来然后按顺序循环执行就可以了
‘贰’ 如何用javascript操作access数据库
1.Access数据库名为 MyData.Mdb, 里面建了一个名为count的表,表由两个 字段组成: ID和COUNT,表里有一条数据: ('count','100')。
文本文件名为 count.txt,里面随便写入一个数字。
静态页面名为Cnt.htm。
2.以上3个文件都放在同一目录下。
由于采用Access数据库,而它采用非标准SQL语法,所以要注意在表名和字段名上需要加方括号: []
3.下面是页面里的代码:其中getCountFromDB方法是对Access数据库进行操作,getCountFromTxt方法是对txt纯文本进行操作,这两个方法都在本地执行通过。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
function getCountFromDB() {
//以当前页面文件为基础,找到文件所在的绝对路径。
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "MyData.mdb";
//去掉字符串中最前面的"files://"这8个字符。
pathpath = path.substring(8);
var updateCnt = 0;
//生成查询和更新用的sql语句。
var sqlSelCnt = "SELECT COUNT FROM [COUNT] WHERE ID = 'count'";
var sqlUpdCnt = "UPDATE [COUNT] SET [COUNT] = '";
//建立连接,并生成相关字符串 www.knowsky.com。
var con = new ActiveXObject("ADODB.Connection");
con.Provider = "Microsoft.Jet.OLEDB.4.0";
con.ConnectionString = "Data Source=" + path;
con.open;
var rs = new ActiveXObject("ADODB.Recordset");
rs.open(sqlSelCnt, con);
while (!rs.eof) {
var cnt = rs.Fields("COUNT");
document.write(cnt);
//将取得结果加1后更新数据库。
updateCnt = cnt * 1 + 1;
rs.moveNext;
}
rs.close();
rs = null;
sqlUpdCntsqlUpdCnt = sqlUpdCnt + updateCnt + "'";
con.execute(sqlUpdCnt);
con.close();
con = null;
}
function getCountFromTxt() {
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "count.txt";
pathpath = path.substring(8);
var nextCnt = 0;
var fso, f1, ts, s;
//以只读方式打开文本文件。
var ForReading = 1;
//以读写方式打开文本文件。
var ForWriting = 2;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.GetFile(path);
ts = f1.OpenAsTextStream(ForReading, true);
s = ts.ReadLine();
nextCnt = eval(s) + 1;
document.write("now count is :" + s);
ts.Close();
ts = f1.OpenAsTextStream(ForWriting, true);
ts.WriteLine(nextCnt);
ts.close();
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
getCountFromTxt();
//-->
</SCRIPT>
</BODY>
</HTML>
4.用这种方法来读写数据库,只适合做计数器和留言版这样的不需要保密性的工作,毕竟代码全是用javascript写成的,谁都可以看到,然后就可以得到路径把db文件下载下来进行分析,所以没办法用它来保存一些不想让别人知道的东西。
‘叁’ powerdesigner 生成的access 数据库脚本怎么语法不对,请问怎么弄
这是Mssql数据库的建表语句啊,和Access数值类型不同的。
比如Mssql里货币类型叫Money,Access里则叫Currency。
‘肆’ Access怎么用SQL脚本创建数据库
CREATE
DATABASE
数据库名称
这样就可以创建数据库了。
CREATE
TABLE
Person
(
LastName
varchar(30),
FirstName
varchar,
Address
varchar,
Age
int(3)
)
这样是创建了一个Person
表,四个字段.(LastName
、FirstName
、Address
、Age
),字段名后跟的是字段类型。(本例针对SQLServer数据库)
‘伍’ bat命令导出access数据库的某个查询,导出逗号分隔的txt,带标题。bat脚本如何写
bat做不到,你可尝试写一个VBS脚本,达到目的
建立一个文本文件,复制下段文本到文本文件中,保存。把该文件名修改为
导出.vbs
具体使用时修改下面代码中的三个地方
d:输出文件名.txt是输出文件的名字
d:aaa.mdb是ACCESS文件的名字
查询1是你要导出的查询的名字
DimAcc
Dimrst
Dimdb
DimFSO
DimtxtFile
DimF
DimstrT
SetAcc=CreateObject("access.application")
SetFSO=CreateObject("Scripting.FileSystemObject")
SettxtFile=FSO.CreateTextFile("d:输出文件名.txt")
Acc.OpenCurrentDatabase("d:aaa.accdb")
Setdb=Acc.CurrentDb
Setrst=db.OpenRecordset("查询1")
ForEachFInrst.Fields
strT=strT&F.Name&","
Next
txtFile.WriteLineLeft(strT,Len(strT)-1)
rst.MoveFirst
DoWhileNotrst.EOF
strT=""
ForEachFInrst.Fields
strT=strT&F&","
Next
txtFile.WriteLineLeft(strT,Len(strT)-1)
rst.MoveNext
Loop
txtFile.Close
rst.Close
Acc.Quit
‘陆’ 如何在access中导出sql脚本语句
打开任意一个查询后,在左上方有个视图按钮,选择后会跳出菜单: 你需要的SQL语句就在第4个选项。
‘柒’ js脚本连access数据库问题,总是提示”用户不存在”,代码如下: var db_bb
你的sql语句都没有执行,应该加上执行的代码,
var rs = new ActiveXObject("ADODB.Recordset");
rs=conn.execute(sql);
然后对获取的内容rs进行判断
‘捌’ ACCESS数据库删除指定数据脚本怎么写。
delete from 表名 where 条件
‘玖’ 如何导出access数据库
access不是像sql
server
oracle、可以把数据库导出备份的.他不需要备份、它是个桌面型的小型数据库.
真要备份的话、只需要这个mdb数据库文件就可以了.
按照你的意思、我估计是想导出某张表、便于它用.
而如你所说的操作.是将你选的当前表、导出到另外一个数据库里mdb
而在桌面上又没有"文件名称.mdb"这个文件、所以给出了错误的提示.
明白了吧.
如果你要它用的话你可以选择表、然后导出为别的格式的
txt拉.
xls拉、这些较常用.
希望对你有帮助.
‘拾’ 可不可以用脚本创建Access数据库
可以,只是Microsoft
Access2003
没有
查询分析器
,你需要在“查询”中来实现,步骤如下:
打开左边列表中的“查询”->双击右边列表中的“在设计图中创建查询”,当提示你选择表时,直接点击“关闭”,然后在空白处点击右键,选择“
SQL视图
”,好了,在这里可以输入你想的
SQL语句
了。
