VB.NET中如何用SQL语句建表(复制表)?谢谢了!

VB.NET中如何用SQL语句建表(复制表)?谢谢了!,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

在SQL数据库里已有一个现成的空数据表(只有字段、没有数据),请问高手,怎样在VB.NET中用SQL语句把该数据库中的那个表复制一个到该数据库(字段不变、数据为空)只是把数据表的名改了?

谢谢!谢谢!

解析:

select * into 新表 from 旧表

使用 SELECT INTO 插入行

SELECT INTO 语句创建一个新表,并用 SELECT 的结果集填充该表。新表的结构由选择列表中表达式的特性定义,例如:

SELECT Shippers.*, Link.Address, Link.City,

Link.Region, Link.PostalCode

INTO NewShippers

FROM Shippers

JOIN LinkServer.DB.dbo.Shippers AS Link

ON (Shippers.ShipperID = Link.ShipperID)

SELECT INTO 可将几个表或视图中的数据组合成一个表。也可用于创建一个包含选自链接服务器的数据的新表。

追问: 只有那个办法? 回答: 是,这跟SQL Server不同,ACCESS是独立文件的,而且它能支持的SQL语句有限,一般是使用ACCESS来创建,若要动态创建,只能用ADO了,但Sql Server就不同了,它可以执行复杂的SQL语句,相对来说,动态创建数据库和表,要比ACCESS方便。 追问: 创建表的话能用SQL语句了吗? 回答: 没试过,应该不行 追问: 那你能告诉我下怎么创建表吗?创建数据库我会了 回答: 可以使用DAO对象来 *** 作,注意是DAO对象,不是ADO对象! 追问: 能不能详细说下过程呢?创建表的过程 回答: 创建表的过程用DAO.net和ADO.net都可以,创建数据库可以用DAO对象,既然你已经可以创建数据库,那么创建表只要先连接到这个数据库,然后用create table语句来执行就行了,可以使用OledbConnection先连接这个库,接着用OledbCommand对象的ExecuteNonQuery来执行create table语句即可。

是否可以解决您的问题?

首先在项目的VB.NET界面,使用菜单【项目】--【添加引用】--【COM】

选择  Microsoft ADO Ext. 2.x for DDL and Security

然后单击【确定】,完成引用。

完整代码如下:

Imports ADOX

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        '创建空的access数据库文件--数据库文件.mdb,密码为123

        Dim Mycat As Catalog = New Catalog()

        Mycat.Create("Provider=Microsoft.Jet.OLEDB.4.0Jet OLEDB:Engine Type=5Data Source= 数据库文件.mdbJet OLEDB:Database Password=123")

        '以下代码创建一个名为“实验数据表”

        Dim MyTable As ADOX.Table = New ADOX.Table         '定义新表

        MyTable.Name = "实验数据表"    '表命名

        '给表“实验数据表” 创建一个字符串字段,字段名“姓名”

        MyTable.Columns.Append("姓名", , ADOX.DataTypeEnum.adWChar)

        '给表“实验数据表” 创建一个整数字段,字段名“学号

        MyTable.Columns.Append("学号", ADOX.DataTypeEnum.adInteger)    '追加一个数字型字段

        '给字段“学号”创建一个主键“PimaryKey_Field”        

        MyTable.Keys.Append("学号", ADOX.KeyTypeEnum.adKeyPrimary, "学号")

        Mycat.Tables.Append(MyTable) '把所有的新字段追加到表

        MyTable = Nothing

        Mycat = Nothing

    End Sub

End Class


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9386173.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存