菜鸟蹒跚学ASP-自动生成Insert语句的VBS
2007-09-30 15:36
525 查看
在Coding的时候,发现最麻烦的是什么啊,是表单提交数据后,往数据库里面插入数据,所以我写了一个自动生成Insert语句的VBS,感觉很好用。节省大量时间啊。
' ----- ExeScript Options Begin -----
' ScriptType: window
' DestDirectory: temp
' Icon: default
' ----- ExeScript Options End -----
set cn = CreateObject("ADODB.Connection")
cnstr = "这里写对应的数据库的链接字符串"
cn.open cnstr
strInput = InputBox("请输入需要查询的表格名称")
sql = "Select a.name,a.length,b.name from syscolumns a, systypes b,sysobjects c where a.xtype=b.xtype and a.id = c.id and c.name = " & Quote(strInput)
set rs= CreateObject("ADODB.RecordSet")
rs.open sql,cn,1,3
set fso = CreateObject("Scripting.FileSystemObject")
set objShell=CreateObject("WScript.Shell")
set f = fso.OpenTextFile(objShell.SpecialFolders.Item("桌面") & "字段名.txt",2,true)
'msgbox objShell.SpecialFolders.Item("Desktop") & "字段名.txt"
Redim ss(rs.RecordCount)
for i = 0 to rs.RecordCount -1
ss(i) = Bracket(rs(0))
rs.MoveNext
next
sql = "INSERT INTO " & strInput & """" & " & _"& vbCrlf
Fields = join(ss,",")
Fields = left(Fields,len(fields) - 1)
Fields = Quote2(" ( " & Fields & ")")
sql = sql & Fields & " & _" & vbCrlf & """" & " VALUES ( "
sql = Quote2(sql) & " & "
Fields = ""
for i = 0 to ubound(ss) -1
if i <> ubound(ss) - 1 then
Fields = Fields & "str" + ss(i) & " & " & Quote2(",") & " & "
else
Fields = Fields & "str" + ss(i) & " & "
end if
next
sql = sql & Fields & Quote2(")")
f.Write sql & vbCrlf
for i = 0 to ubound(ss) - 1
f.WriteLine "str" & ss(i) & " = "
next
f.close
rs.close
cn.close
objShell.Run "Notepad.exe " & objShell.SpecialFolders.Item("桌面") & "字段名.txt"
function Quote(str)
Quote = "'" & str & "'"
end function
function Quote2(str)
Quote2 = """" & str & """"
end function
function Bracket(str)
Bracket = "[" & str & "]"
end function
' ----- ExeScript Options Begin -----
' ScriptType: window
' DestDirectory: temp
' Icon: default
' ----- ExeScript Options End -----
set cn = CreateObject("ADODB.Connection")
cnstr = "这里写对应的数据库的链接字符串"
cn.open cnstr
strInput = InputBox("请输入需要查询的表格名称")
sql = "Select a.name,a.length,b.name from syscolumns a, systypes b,sysobjects c where a.xtype=b.xtype and a.id = c.id and c.name = " & Quote(strInput)
set rs= CreateObject("ADODB.RecordSet")
rs.open sql,cn,1,3
set fso = CreateObject("Scripting.FileSystemObject")
set objShell=CreateObject("WScript.Shell")
set f = fso.OpenTextFile(objShell.SpecialFolders.Item("桌面") & "字段名.txt",2,true)
'msgbox objShell.SpecialFolders.Item("Desktop") & "字段名.txt"
Redim ss(rs.RecordCount)
for i = 0 to rs.RecordCount -1
ss(i) = Bracket(rs(0))
rs.MoveNext
next
sql = "INSERT INTO " & strInput & """" & " & _"& vbCrlf
Fields = join(ss,",")
Fields = left(Fields,len(fields) - 1)
Fields = Quote2(" ( " & Fields & ")")
sql = sql & Fields & " & _" & vbCrlf & """" & " VALUES ( "
sql = Quote2(sql) & " & "
Fields = ""
for i = 0 to ubound(ss) -1
if i <> ubound(ss) - 1 then
Fields = Fields & "str" + ss(i) & " & " & Quote2(",") & " & "
else
Fields = Fields & "str" + ss(i) & " & "
end if
next
sql = sql & Fields & Quote2(")")
f.Write sql & vbCrlf
for i = 0 to ubound(ss) - 1
f.WriteLine "str" & ss(i) & " = "
next
f.close
rs.close
cn.close
objShell.Run "Notepad.exe " & objShell.SpecialFolders.Item("桌面") & "字段名.txt"
function Quote(str)
Quote = "'" & str & "'"
end function
function Quote2(str)
Quote2 = """" & str & """"
end function
function Bracket(str)
Bracket = "[" & str & "]"
end function
相关文章推荐
- ASP.NET之数据库设计与SQL语句(旗舰版2)(使用ACCESS自动生成SQL语句,强大!)
- C# 由数据集DataSet自动生成Insert的SQL语句集合
- sql server的id字段设置为自动生成的,那么该怎么写insert语句呢?
- 自动生成Insert 语句的小工具
- 根据表名自动生成INSERT,UPDATE,DELETE,SELECT的SQL语句
- SQL Server自动生成INSERT语句
- Oracle-自动生成insert、update、select、javabean语句
- asp根据表单自动生成sql语句的函数
- 自动生成INSERT语句的SQL存储过程
- 将表中的数据自动生成INSERT语句的存储过程,自己收藏一下
- 自动生成Insert 语句的小工具
- 自动生成sql insert 语句
- 自动生成Insert语句
- asp根据表单自动生成sql语句的函数
- ASP.NET基础教程-使用CommandBuilder对象自动生成SQL语句对数据进行批量更新
- 根据表名自动生成INSERT,UPDATE,DELETE,SELECT的SQL语句
- 从Oracle数据库中读取数据,自动生成INSERT语句
- 自动生成Insert Into 的SQL语句
- 根据数据库自动生成INSERT/UPDATE更新语句
- SQL Server自动生成INSERT语句(在SQL2005下测试通过)