加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

项目实战(四)—VB.NET动态创建表

发布时间:2020-12-17 08:03:33 所属栏目:百科 来源:网络整理
导读:从接触数据库到现在,我们数据库中的表一般是静态的的。做项目的时候也是根据业务的需求把每个表都建立完整了,才开始开发。而并非所有的表都是静态的,现在我们开发时就遇到这样的一个问题,我们需要根据用户对现实粮仓的布局在数据库中动态建表。 一、问题

从接触数据库到现在,我们数据库中的表一般是静态的的。做项目的时候也是根据业务的需求把每个表都建立完整了,才开始开发。而并非所有的表都是静态的,现在我们开发时就遇到这样的一个问题,我们需要根据用户对现实粮仓的布局在数据库中动态建表。


一、问题


系统的一些表必须在本系统在实际运行过程中生成。


二、途径


在系统中动态创建这些表,依据具体的情况,将每个仓建立一张这样的表。


三、项目实例


1、简单例子


<span style="font-size:18px;">Declare @SQL VarChar(1000)                                                      '定义查询变量

SELECT @SQL = 'Create Table ' + @TableName + '('
SELECT @SQL = @SQL + 'ID int NOT NULL Primary Key,FieldName VarChar(10))'      '拼接字符串

Exec (@SQL)                                                                     '执行字符串
</span>

2、项目实例


传入参数为表名

<span style="font-size:14px;">    Public Function CreateStorageHumi(intStorage As Integer) As Boolean Implements ICreateStorageHumi.CreateStorageHumi
           
         '拼接表名
         Dim tableName As String     
      
         '定义创建表时使用的参数                                                                                                      
         Dim sqlparam(0 To 1) As SqlParameter    

        '创建温度测量表的SQL语句
         Dim strCreate As String = "exec('create table '+@storageNumber+' '+@string)"       

        'StorageHumi为表名前半部分,intStorage为每个仓的仓号
        tableName = "StorageHumi" & intStorage                       

        '传递表名参数
        sqlparam(0) = New SqlParameter("@storageNumber",tableName)                                             

        '插入表中字段
        sqlparam(1) = New SqlParameter("@string","(dectDate date not null,dectTime datetime not null,inTemp  varchar(5) not null)")                                                                                                                                                                 
  
        '执行创建语句,创建该数据库
        sqlHelper.UpdDelAlter(strCreate,CommandType.Text,sqlparam)        
                                    
        Return True

    End Function</span>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读