我要的内容:在SQL里对表右键Script Table as -> Create To -> New Query Editor Window的代码,下面有个例子。
我要用vb.net把它调用出来,即我要拿到SQL Create Table的Sql语句代码,怎么写?
(已实现SQL登录,我只要Create Table的语句,不知道怎么调用出来)。附Sql的 Create table代码例子USE [Tecsys_db1]
GO/****** Object: Table [dbo].[tblBOMDefaultVersion] Script Date: 01/29/2013 09:59:59 ******/
SET ANSI_NULLS ON
GOSET QUOTED_IDENTIFIER ON
GOCREATE TABLE [dbo].[tblBOMDefaultVersion](
[ProductCode] [nvarchar](30) NOT NULL,
[ProductID] [uniqueidentifier] NOT NULL,
[ProductVer] [nvarchar](16) NOT NULL,
CONSTRAINT [PK_tblBOMDefaultVersion] PRIMARY KEY NONCLUSTERED
(
[ProductCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_Product] DEFAULT ('') FOR [ProductCode]
GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_ProductID] DEFAULT (newid()) FOR [ProductID]
GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_Version] DEFAULT ('') FOR [ProductVer]
GO
我要用vb.net把它调用出来,即我要拿到SQL Create Table的Sql语句代码,怎么写?
(已实现SQL登录,我只要Create Table的语句,不知道怎么调用出来)。附Sql的 Create table代码例子USE [Tecsys_db1]
GO/****** Object: Table [dbo].[tblBOMDefaultVersion] Script Date: 01/29/2013 09:59:59 ******/
SET ANSI_NULLS ON
GOSET QUOTED_IDENTIFIER ON
GOCREATE TABLE [dbo].[tblBOMDefaultVersion](
[ProductCode] [nvarchar](30) NOT NULL,
[ProductID] [uniqueidentifier] NOT NULL,
[ProductVer] [nvarchar](16) NOT NULL,
CONSTRAINT [PK_tblBOMDefaultVersion] PRIMARY KEY NONCLUSTERED
(
[ProductCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_Product] DEFAULT ('') FOR [ProductCode]
GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_ProductID] DEFAULT (newid()) FOR [ProductID]
GOALTER TABLE [dbo].[tblBOMDefaultVersion] ADD CONSTRAINT [DF_tblBOMDefaultVersion_Version] DEFAULT ('') FOR [ProductVer]
GO
SQL Server 2000 看系统表 sysobjects、syscolumns
SQL Server 2005 看 对象目录视图
方法有了,代码需要自己写。
1)sysobjects 中找 name='tblBOMDefaultVersion' 的记录,取得 Id,这是关键标识。
2)syscolumns 中找 id=<表的Id>,这是所有字段。字段类型需要查一下 systypes。
这样字段定义就有了。
3)sysobjects 中找 parent_obj=<表的Id>,这是该表下属的各种主键、索引、约束等对象。
4)同样可在 syscolumns 找到对应的字段。
安装语法合成 SQL。
Dim myConn As New SqlClient.SqlConnection(connectionstring)
Dim myCmd As New SqlClient.SqlCommand(strsql, myConn)
Try
myConn.Open()
myCmd.ExecuteNonQuery()
Catch ex As Exception
Throw New Exception(ex.Message)
Finally
myCmd.Dispose()
myConn.Close()
myConn.Dispose()
End Try