[VB.NET]我在dataset里新建了一个datatable表,不知道如何把表添加到数据库里面,请指点一下!

VB.NET源码-156个实用实例哦…… 我在dataset里新建了一个datatable表,不知道如何把表添加到数据库里面,请指点一下!
打开数据库后,用代码在数据集里面新建了一个datatable表,但是不知道如何把新建的datatable表添加到数据库里面,数据库里面本身也有很多表,请指点一下代码怎么写!
__________________________________________________________________________
利用SQL脚本生成表,然后用你的DATASET中的表数据插入。
给分!!
__________________________________________________________________________
LYDF4151没仔细看问题:我的问题是怎么写代码把新生成的表添加到数据库里面。
__________________________________________________________________________
你直接用SQL语句建立表,不知道datatable能不能往数据库里建表,
我通常都是用datatable对数据库中现有的表进行操作!
如果datatable能往数据库里建表,也要用到SQL语句,何必多此一举呢?
__________________________________________________________________________
楼上说的办法不错,但是我的datatable里面的字段是根据用户填写的内容自定义的,比如第一个字段可能是textbox1.text 第二个字段是textbox2.text ......以此类推,这种情况在定义datatable字段时引用文本框即可,但是如果用sql语句生成的话,可以引用文本框内容吗?

还有一种是字段是靠循环产生的,如:
dim mytable As New DataTable( tb_20 )
for i as integer =1 20
mytable.Columns.Add(i , System.Type.GetType( System.String ))
next
这种情况用SQL语句是否可以实现?
__________________________________________________________________________
还有一种情况字段是靠循环产生的,如:
dim mytable As New DataTable( tb_20 )
for i as integer =1 to 20
mytable.Columns.Add(i , System.Type.GetType( System.String ))
next
这种情况用SQL语句是否可以实现?
__________________________________________________________________________
我都没看懂LZ到底想实现什么功能啊!
__________________________________________________________________________
在用DataTable对数据库进行操作的时候肯定要用到SQL

我还是建议你用代码来判断你要建立的表
CREATE TABLE VEHICLE . WAITPUNISH ( WFBH VARCHAR2(30 byte) NOT
NULL, SERWJM VARCHAR2(30 byte) NOT NULL,)
TABLESPACE VEHICLE PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS
255
STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS
2147483645 PCTINCREASE 0)
LOGGING
这是在oracle数据库中建立一个表
dim sqltext as string
sqltext= CREATE TABLE VEHICLE . WAITPUNISH ( & textbox1.text & VARCHAR2(30 byte) NOT
NULL, & textbox2.text & VARCHAR2(30 byte) NOT NULL,)
TABLESPACE VEHICLE PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS
255
STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS
2147483645 PCTINCREASE 0)
LOGGING

你只需要判断用户建立了几个字段即可,然后用for循环来写SQL语句!
__________________________________________________________________________
第二个括号前多了一个逗号!!!
意外!!!
__________________________________________________________________________
思路基本清晰了,先获取用户定义表的名字和字段数目,然后用sql语句建立表,再根据字段数目用循环语句循环设定表的字段,是不是这样?
__________________________________________________________________________
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在VB.NET中,可以使用DataSet的Copy方法将DataSet中的数据复制到一个新的DataTable中。具体的代码如下所示: ```vb Dim dataSet As New DataSet() ' 假设ordersTable是已经填充好数据的DataTable Dim ordersTable As DataTable = dataSet.Tables("Orders") ' 创建一个新的DataTable,并将ordersTable中的数据复制到新的DataTable中 Dim newDataTable As DataTable = ordersTable.Copy() ``` 通过调用Copy方法,可以将DataSet中的数据复制到一个新的DataTable中,然后可以对新的DataTable进行操作。\[2\] 需要注意的是,如果你只是想在代码中使用DataTable,而不需要使用DataSet,可以直接从数据库中获取数据并填充到DataTable中,而不需要使用DataSet。你可以使用ADO.NET提供的SqlConnection和SqlDataAdapter类来实现这个功能。具体的代码如下所示: ```vb Dim connStr As String = "Data Source=PC-201104071256\sqlEXPRESS;Initial Catalog=Northwind;Integrated Security=True" Dim conn As New SqlConnection(connStr) Dim sql As String = "SELECT * FROM Orders" Dim adapter As New SqlDataAdapter(sql, conn) Dim dataTable As New DataTable() adapter.Fill(dataTable) ``` 通过使用SqlConnection和SqlDataAdapter类,可以连接到数据库并执行查询,然后将查询结果填充到DataTable中。\[3\] #### 引用[.reference_title] - *1* *2* [VB.Net DataSetDataTable](https://blog.csdn.net/wulingmin21/article/details/6888461)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [vb.net中从datatable读取数据到Excel](https://blog.csdn.net/weixin_35651102/article/details/117833978)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值