主页 > 知识库 > SQL获取表结构的show_table.vbs (冰点极限NP)

SQL获取表结构的show_table.vbs (冰点极限NP)

热门标签:铁路电话系统 美图手机 智能手机 网站文章发布 银行业务 检查注册表项 呼叫中心市场需求 服务器配置
复制代码 代码如下:

set arg=wscript.arguments
If arg.count = 0 Then
show_help()
wsh.quit
End If
Server = arg(0)
User = arg(1)
pass = arg(2)
database_name = arg(3)
table_name = arg(4)
set Conn = CreateObject("ADODB.Connection")
Conn.Open "Driver={SQL Server};Server=" Server ";UID=" User ";PWD=" Pass ";Database=" database_name
Set rs = conn.execute("select count(*) as n from " database_name ".dbo.sysobjects where id = object_id(N'[dbo].[" table_name "]')")
if rs("n") =0 Then
wsh.echo "table have???"
wsh.quit
End If
sql1="use " database_name ";select count(column_name) from information_schema.columns where table_name='" table_name "'"
set rs1=conn.execute(sql1)
num = rs1(0)
rs1.close
Set rs1 = Nothing
i = 1
sql2="use " database_name ";select column_name,data_type,IS_NULLABLE,character_octet_length,collation_name,domain_name from information_schema.columns where table_name='" table_name "' order by ordinal_position"
'wsh.echo sql2

set rs2=conn.execute (sql2)
wsh.echo "if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[" table_name "]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)"
wsh.echo "drop table [dbo].[" table_name "]"
wsh.echo "GO"
wsh.echo "CREATE TABLE [dbo].[" table_name "] ("
do while not rs2.eof
col_dn = rs2("domain_name")
col_name = rs2("column_name")
col_type = rs2("data_type")
col_len = rs2("character_octet_length")
col_an = rs2("collation_name")
col_is = rs2("IS_NULLABLE")
sql = chr(9)"[" col_name "] "
If col_dn = "id" Then
sql = sql col_dn " "
Else

sql = sql "[" col_type "] "
If col_len > "" Then
sql = sql "(" col_len ") "
End If
If col_an > "" Then
sql = sql "COLLATE " col_an
End If
End If


If col_is = "No" Then
sql = sql " NOT NULL "
Else
sql = sql " NULL "
End If
If i = num Then
sql = sql Chr(13)Chr(10)") ON [PRIMARY]"
Else
sql = sql ","
End If
i = i +1
wsh.echo sql
rs2.movenext
loop
wsh.echo "GO"
rs2.close
Set rs2 = Nothing
conn.close
Set conn=Nothing
Sub show_help()
wsh.echo "code by N37P47ch "
wsh.echo "cscript show_table.vbs ip user pass database table"
End Sub
您可能感兴趣的文章:
  • show engine innodb status显示信息不全如何解决
  • Oracle中实现MySQL show index from table命令SQL脚本分享
  • Mysql中 show table status 获取表信息的方法

标签:新疆 沧州 红河 上海 乐山 长治 沈阳 河南

巨人网络通讯声明:本文标题《SQL获取表结构的show_table.vbs (冰点极限NP)》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266