Wincc操作SqlServer数据库-类-CreateTable()
工控狂人
2022年05月18日 17:03
收录于文集
共23篇

     本篇给大家介绍CreateTable()函数,此函数依旧包含在DATABASE类里面,该函数的作用是创建一个新的表

先上代码:

'创建表(并创建一个主键ID) Function CreateTable() CreateTable=False If CheckDB(N_DBname)=False Then Msgbox("数据库不存在&#​34;) Exit Function End If If CheckTable() Then Msgbox("数据表存在,无法创建此表,请重新命名&#​34;) Else N_sql="create table &#​34; + N_TBname + "(ID Int identity(1,1) primary key)" DOsql_1(N_sql) If CheckTable()=TrueThen  CreateTable=True End If End If End Function

        函数代码部分依旧十分的简单,先去检查数据库是否存在,不存在弹出提示框,随后退出此函数,数据库存在时再去检查数据库中的表,查看有没有名称为N_TBname的表,如果表存在则不能重新命名,表不存在时,赋值sql语句,执行创建表,并创建一个主键ID,自增为1

先查看一下电脑上有哪些数据库:

数据库DDD下面有个Table_1我们通过脚本再创建一个Table_2 ,在wincc画面新建一个按钮,输入一下VBS脚本:

Sub OnLButtonDown(ByVal Item, ByVal Flags, ByVal x, ByVal y)      

                                                                                                                              Dim mydata Set mydata=New DATABASE mydata.DBname="DDD&#​34; mydata.TBname="table_2&#​34; If mydata.CreateTable() Then Msgbox("数据表创建成功&#​34;) End If End Sub

简单分析一下这个函数,先实例化对象,然后指定操作的数据库和需要创建的表名称,然后执行创建函数,

运行画面并且点击按钮,执行结果如下:

如果再次点击,则会弹出提示框提示该表已经存在:

创建表的函数基本介绍完成了,在这里补充一点创建表的知识,本篇所使用的的sql语句翻译一下是这样的

N_sql="create table Table_2 (ID Int identity(1,1) primary key)"

创建表的同时创建了一个主键ID,如果我们知道所有的列名称,在创建表的时候可以一起创建,例如在 在Microsoft SQL Server Management Studio   中输入如下sql语句,创建表和列

create table Table_3 (ID Int identity(1,1) primary key,时间 datetime,实数 real,整数 int ,字符串 varchar(200))

点击执行后结果如下:

刷新一下数据库,可以看到数据库DDD下面多了个Table_3的表并且列都添加到里面,结果如下:

关于数据类型主要有以下几种:

在wincc里面我觉得熟悉几种常用的数据类型就够了,例如 int ,real,varchar,datetime。

       另外补充的一点是在创建列ID时 ID Int identity(1,1) primary key ID指定为整数,然后, identity(1,1)指定自增为1,就是每写入一条数据时,ID都增加1,primary key指定主键 

我们还可以指定其他的内容,例如指定字符串列不允许为空

字符串 varchar(200))not null

指定数字的默认值

整数 int default 0

关于更多数据类型的知识,请参考其他文章,本篇不再做过多的介绍

数据类型的内容节选自网络

CreateTable()函数介绍  完