使用方法:保存為ASPTools.hta然后再運行
復制代碼 代碼如下:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml">
head>
meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
meta name="author" content="柳永法" />
title>ASP輔助工具/title>
style>body{ font-size:12px}/style>
HTA:APPLICATION
ID="ASPTools"
APPLICATIONNAME="ASPTools"
SCROLL="no"
SINGLEINSTANCE="yes"
WINDOWSTATE="normal"
>
/head>
body>
div>
input type="file" id="txtFile" onchange="CreateTableSelect('ACCESS')" style="display:none" />
IP:input type="text" name="IP" size="16" style="border:1px solid green" value=".\sql2005" />
登錄名:input type="text" name="UserID" size="10" style="border:1px solid green" value="sa" />
密碼:input type="password" name="pwd" size="10" style="border:1px solid green" value="yongfa365" />
數(shù)據(jù)庫名:input type="text" name="dbname" size="10" style="border:1px solid green" value="hb605-8-8" />br />
input name="button2" type="button" id="button2" style="border:1px solid green" onclick="CreateTableSelect
('MSSQL')" value="連接SQL數(shù)據(jù)庫" />
input type="button" id="btnFromFile" onclick="txtFile.click()" value="連接ACCESS數(shù)據(jù)庫" style="border:1px solid
green" />
span id="Tables" >/span>
hr />
模板:
input type="text" id="opt" value="" size="40" />
select size="1" id="fz" onchange="opt.value=this.value" style="width:200px">/select>
input name="button" type="button" id="button" onclick="c()" value="轉換" style="border:1px solid green">
hr />
textarea id="s" rows="10" cols="80" style="width:98%">/textarea>
input type="button" onclick="MadeSQL()" value="生成SQL語句" style="border:1px solid green" />
textarea id="d" rows="10" cols="80" style="width:98%">/textarea>
/div>
pre id="SQLDEMO" style="display:none" intro="通用建表結構">
--通用建表結構
Create Table [dbo].[tablename] (
[ID] int primary key identity(1,1),--ID,主鍵,自動號
[txtTitle] varchar(255),--標題
[txtContent] text,--內容
[PutTime] datetime Default (getdate()),--提交時間
[ModiTime] datetime Default (getdate()),--修改時間
[Hits] int Default (0),--點擊數(shù)
[Flags] int Default (0) ,--標識
[OrderID] int Default (0),--排序號
)
/pre>
pre id="sDemo" style="display:none" intro="初始源測試數(shù)據(jù)">
UserName
Password
Sex
TrueName
Age
Tel
MSN
QQ
Email
/pre>
pre id="fzDemo" style="display:none" intro="輔助輸入">
輔助輸入
rs("$1") = Request("$1")
rs("$1") = SafeRequest("$1")
$1 = Request("$1")
$1 = SafeRequest("$1")
tr>td>$1:/td>td>input type="text" name="$1" size="20">/td>/tr>
/pre>
hr />
建議查看源文件然后保存為ASPTools.hta然后再運行
script language="VBScript" type="text/vbscript">
self.Focus()
self.ResizeTo 620, 520
'初始化數(shù)據(jù)
s.Value = sDemo.innerHTML
fzs = Split(fzDemo.innerHTML, vbCrLf)
For Each optTemp In fzs
Set o = document.createElement("Option")
o.text = optTemp
o.Value = optTemp
fz.Add o
Next
opt.Value = fz.options(1).Value
'程序運行時的一些函數(shù)
Function c()
ss = Split(s.Value, vbCrLf)
For Each sss in ss
If sss>"" Then Str = Str Replace(opt.Value, "$1", sss) vbCrLf
Next
d.Value = Str
End Function
Dim xCat '定義全局變量,避免重復鏈接數(shù)據(jù)庫。
Function CreateTableSelect(dbType)
Set xCat = CreateObject("ADOX.Catalog")
If dbType = "ACCESS" Then
xCat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" txtFile.Value
ElseIf dbType = "MSSQL" Then
xCat.ActiveConnection = "Provider=SQLOLEDB.1; Persist Security Info=True; Data Source=" IP.Value ";
Initial Catalog=" dbname.Value "; User ID=" UserID.Value "; Password=" pwd.Value
End If
For Each xTable in xCat.Tables
tableType = xTable.Type
If tableType = "TABLE" Then
TablesS = TablesS "option value='" xTable.Name "'>" xTable.Name "/option>"
End If
Next
Tables.innerHTML = " select name='NowTables' onchange='CreateFieldSelect(""" dbType """)'>option>==請選擇
表名==/option>" TablesS "/select>"
End Function
Function CreateFieldSelect(dbType)
Dim Item
For Each xTable in xCat.Tables
If xTable.Name = NowTables.Value Then
For Each Item in xTable.Columns
Str = Str + Item.Name vbCrLf
Next
Exit For
End If
Next
s.Value = Left(Str, Len(Str) -2)
End Function
Function MadeSQL()
yongfa365Fields = Split(s.Value, vbCrLf)
yongfa365Code2 = ""
For Each sql in yongfa365Fields
If sql>"" Then strSQL = strSQL " [" sql "] varchar(50),"
Next
strSQL = Left(strSQL, Len(strSQL) -1)
yongfa365Code2 = "Create Table TableName(" vbCrLf Replace(strSQL, ",", "," vbCrLf) vbCrLf ")" vbCrLf
vbCrLf
TempValue = Join(yongfa365Fields, " ""','"" objItem.")
yongfa365Code2 = yongfa365Code2 "Conn.Execute ""insert into Info (" Join(yongfa365Fields, ",") ") values
('"" objItem." TempValue " ""')""" vbCrLf vbCrLf vbCrLf
TempValue = Join(yongfa365Fields, """) ""','"" rs(""")
yongfa365Code2 = yongfa365Code2 "Conn.Execute ""insert into Info (" Join(yongfa365Fields, ",") ") values
('"" rs(""" TempValue """) ""')""" vbCrLf vbCrLf vbCrLf
TempValue = Join(yongfa365Fields, " ""','"" ")
yongfa365Code2 = yongfa365Code2 "Conn.Execute ""insert into Info (" Join(yongfa365Fields, ",") ") values
('"" " TempValue " ""')""" vbCrLf vbCrLf vbCrLf
d.Value = SQLDEMO.innerHTML String(2, vbCrLf) yongfa365Code2
End Function
Function reReplace(Str, restrS, restrD)
Set re = New RegExp
re.IgnoreCase = True
re.Global = True
re.Pattern = restrS
reReplace = re.Replace(Str, restrD)
End Function
/script>
/body>
/html>
為防止出錯,特給打包下載地址