如何通过SQL语句从数据库读取数据,在把读到的数据写入另一个新建表中去删除原来表

如何通过SQL语句从数据库读取数据,在把读到的数据写入另一个新建表中去删除原来表,第1张

1)首先针对每天执行的问题,各个 *** 作系统都有计划任务(如linux和unix都可以通过crontab实现。windows就是计划任务啦),可以通过这个实现每天执行的目的。

2)每天执行的东西就是写好存储过程,存储过程内容如下:

如果表记录数不多可以采用如下方法

insert into 新表 select from 原表;

delete from 原表;

如果记录过多,可以采用如下方法

先采用不写日志的方式插入记录(如oracle采用insert append方式,sqlserver采用select into的方式),然后用truncate table 原表的方式加快执行速度,提高运行效率。

1、首先wincc通过opc远程读取sql数据库使用OPC访问WINCC的服务器。

2、其次也直接对WINCC的数据进行更新就好了。

3、最后因为涉及到WinCC数据库表的结构不同的问题,需与数据库建立连接。

楼主不会写连接字符串吗?

string myConnection;

myConnection='Provider=数据库名;Password=密码;Persist Security Info=True;User ID=账号;Data Source=ip地址'

记不住的话可以新建一个后缀为udl的文件,通过提示新建一个连接,测试连接成功后用记事本打开取出连接字符串即可

你需要做个个串口通讯,将单片机的数据上载到电脑端,电脑端要写一个上位机。可讲通讯过来的数据存入 sql server的数据库中

单片机端需要写串口程序,PC 端需要些上位机软件 VB可以写用MSComm1 控件

通讯例子如下

Dim i As Integer

Dim a As Integer

Dim t() As Byte

Private Sub Command1_Click()

If Command1Caption = "打开串口" Then

'Shape1Visible = True

Shape1FillColor = &HFF&

Shape1BackColor = &HFF&

Shape1BorderColor = &HFF&

Command2Enabled = True

Command3Enabled = True

Command1Caption = "关闭串口"

'MSComm1CommPort = 1 '设定Com1口

MSComm1CommPort = Combo1Text '设定Com1口

If MSComm1PortOpen = False Then

'MSComm1Settings = "4800,N,8,1" '4800波特率,无校验,8位数据位,1位停止位

MSComm1Settings = Combo2Text & "," & Combo3Text & "," & Combo4Text & "," & Combo5Text '4800波特率,无校验,8位数据位,1位停止位

MSComm1InputLen = 1 '读取接收缓冲区的所有字符

MSComm1InputLen = 5

MSComm1InBufferSize = 5 '设置接收缓冲区为1024字节

MSComm1OutBufferSize = 5 '设置发送缓冲区为512字节

MSComm1SThreshold = 0 '不触发发送事件

MSComm1RThreshold = 1 '每一个字符到接收缓冲区都触发接收事件

MSComm1PortOpen = True '打开串口

End If

MSComm1OutBufferCount = 0 '清空发送缓冲区

MSComm1InBufferCount = 0 '清空接收缓冲区

Dim temp() As Byte

Else

'Option2Value = False

'Option1Value = False

'Shape1Visible = False

Shape1BackColor = &H808080

Shape1BorderColor = &H808080

Shape1FillColor = &H808080

Command2Enabled = False

'Command3Enabled = False

MSComm1PortOpen = False

Command1Caption = "打开串口"

End If

End Sub

Private Sub Command2_Click()

'Command2Enabled = False

'Option2Value = False

'Option1Value = False

'Shape2Visible = False

MSComm1OutBufferCount = 0 '清空发送缓冲区

MSComm1InBufferCount = 0 '清空接收缓冲区

't(0) = "255"

' MSComm1Output = t

MSComm1Output = Text2Text

End Sub

Private Sub Command3_Click()

Text1Text = ""

End Sub

Private Sub Command5_Click() '退出

End

End Sub

Private Sub Command6_Click()

Text2Text = ""

End Sub

Private Sub Command7_Click()

If Command7Value Then

'Command7Visible = False

Command1Visible = True

Command2Visible = True

Command3Visible = True

Command6Visible = True

Label1Visible = True

Label2Visible = True

Label3Visible = True

Label4Visible = True

Label5Visible = True

Label6Visible = True

Label7Visible = True

Combo1Visible = True

Combo2Visible = True

Combo3Visible = True

Combo4Visible = True

Combo5Visible = True

Text1Visible = True

Text2Visible = True

Frame1Visible = True

Frame2Visible = False

'Command3Visible = False

'Option1Value = False

Shape1Visible = True

Else

Label1Visible = False

Label2Visible = False

Label3Visible = False

Label4Visible = False

Label5Visible = False

Label6Visible = False

Label7Visible = False

Combo1Visible = False

Combo2Visible = False

Combo3Visible = False

Combo4Visible = False

Combo5Visible = False

Command1Visible = False

Command2Visible = False

Command3Visible = False

Text1Visible = False

Text2Visible = False

Frame1Visible = False

Frame2Visible = False

End If

End Sub

Private Sub Form_Load()

MSComm1InBufferCount = 0 '清除发送缓冲区数据

MSComm1OutBufferCount = 0 '清除接收缓冲区数据

ReDim t(0)

t(0) = "0"

Combo1AddItem "1"

Combo1AddItem "2"

Combo1AddItem "3"

Combo1AddItem "4"

'Combo1Text = "1"

Combo2AddItem "300"

Combo2AddItem "600"

Combo2AddItem "1200"

Combo2AddItem "2400"

Combo2AddItem "4800"

Combo2AddItem "9600"

Combo2AddItem "19200"

Combo3AddItem "N"

Combo3AddItem "O"

Combo3AddItem "E"

Combo4AddItem "8"

Combo4AddItem "7"

Combo4AddItem "6"

Combo5AddItem "1"

Combo5AddItem "2"

Combo5AddItem "3"

End Sub

Private Sub MSComm1_OnComm()

Dim s1 As String

Dim s2 As String

Select Case MSComm1CommEvent

Case comEventOverrun '数据丢失

Text_SENDText = "" '清空发送缓冲区

Text_RECVText = "" '清空接收缓冲区

Text_SENDSetFocus

Exit Sub

Case comEventRxOver '接收缓冲区溢出

Text_SENDText = "" '清空发送缓冲区

Text_RECVText = "" '清空接收缓冲区

Text_SENDSetFocus

Exit Sub

Case comEventTxFull '发送缓冲区已满

Text_SENDText = "" '清空发送缓冲区

Text_RECVText = "" '清空接收缓冲区

Text_SENDSetFocus

Exit Sub

Case comEvReceive '接收字符数据

Dim Buffer As Variant

MSComm1InputLen = 1

MSComm1InputMode = comInputModeBinary '二进制传输

Buffer = MSComm1Input

'Text1Text = Buffer(0)

's2 = Buffer(1)

Text1Text = Text1Text & (Val(MSComm1Input)) & " "

Case Else

End Select

End Sub

Private Sub Option1_Click()

End Sub

sql循环读取多个数据库

SQL游标的优点是可以方便从一个结果集中进行循环遍历数据在进行 *** 作。

1、游标允许应用程序对查询语句select 返回的行结果集中每一行进行相同或不同的 *** 作,而不是一次对整个结果集进行同一种 *** 作;

2、它还提供对基于游标位置而对表中数据进行删除或更新的能力;

3、游标把作为面向集合的数据库管理系统和面向行的程序设计两者联系起来,使两个数据处理方式能够进行沟通。

不同的计算机安装SQL的连接是不同的

关于连接总结如下:

ADODB编码连接字的实例

VB中,关于SQL数据库的连接是比较复杂的,但也有一个可以参考的学习思路,方法如下。

1、建立数据库链接

在工具条中,有一个“数据视图窗口”的工具,用它可以建立各种数据库的链接。建立链接的过程:

点击“数据视图窗口”,出现“数据视图”窗体,点击选中“数据链接”,按右键,点击“添加数据链接”,出现“数据链接属性”窗口,有四个菜单:“提供程序”、“连接”、“高级”、“所有”。

选中“提供程序”菜单,这里有许多用于链接的驱动程序,选中“Microsoft OLE DB Provider for SQL Server”,点击“下一步”。“Microsoft OLE DB Provider for SQL Server”是真正的SQL数据库连接字用的驱动程序。

当选中“Microsoft OLE DB Provider for SQL Server”,点击“下一步”,则自动进入“连接”窗体界面。这个“连接”窗体界面的内容,随前面选取的驱动程序而定。

因为前面选择的是“Microsoft OLE DB Provider for SQL Server”,所以,“连接”窗体的主要内容就是直接访问SQL数据库的相关内容的设置,如下:

在“……服务器名称”一栏中怎么选择呢如SQL数据库服务器安装时是选择当地默认的实例,即以本地计算机名代替的服务器,则此处应填写的内容是:(local),或者是:本地的计算机名。估计,非本地的则可填写:服务器的IP地址或服务器名称。

在“输入登录服务器的信息”一栏中怎么选择呢当选择“使用指定的用户名和密码”一项时,用户名与密码是在SQL服务器安装时选定的内容(值)。若不用密码及用户名登入,则连接字的密码应代之为:Integrate Security=SSPI,表示用“Windows NT 集成安全设置”之意,SQL2005是用这一项的。但实际的ADODB的连接字是不能用这个NT打开的。

在“服务器上选择数据库”一栏中怎么选择呢当前面两项内容选择正确后,此处的内容是存在可选的,选中即可。

最后“测试连接”,显示成功。则在“数据视图”窗体的“数据链接”中将出现“Datelink1”,表示建立了以“Datelink1”为名的第1个数据库链接。当然也可以建立多个,名字将分别为“Datelink2”、“Datelink3”……

2、从已建立的数据库链接的属性中找连接字。

当选中“数据视图”窗体的“数据链接”,出现“Datelink1”,并选中“Datelink1”,按右键出现d出菜单,选中“属性”,点击,并可看见这个链接所用到的名字“Name”,“Name”对应的值,就是连接字的主要内容。只是缺少“Password= ”与“ ConnectionTimeout= ”,因此只要把这两向补齐,就是一个完整可用的ADODB的连接字,而且也适用于ADODC控件的字连接,即ConnectionString,但不需要双引号“”而已。

注意:在前面“数据链接属性”窗口的四个菜单“提供程序”、“连接”、“高级”、“所有”中,前面只重点介绍了“提供程序”与“连接”两项,实际上,“高级”就有ConnectionTimeout属性的选择项。而“提供程序”、“连接”、“高级”三项的选择结果,都在“所有”项中集中显示出来,而且“所有”项中,还有前三项不具有的其它的内容,因此,要注意察看与应用。

Command1_Click()

MeCaption = "NAME"

MeCls

Dim con As ADODBConnection (注:ADODC控件用的申明,不用ADODB,也不用Adodc。)

Dim rs As New ADODBRecordset

Set con = New ADODBConnection

conConnectionString = "Provider=SQLOLEDB1;Persist Security Info=False;User ID=sa;Initial Catalog=SQL数据库名;Data Sure=(local);Password=密码值(注:无时不选此项);Use Procedure for preplare=1;Auto Translate=True;Packet Size = 4096;Workstation ID=(local)(注:或是局域网的机器名);Use Encryption for Date=False;Tag With column collation when Possible=False"

conOpen

rsOpen "Select from SQL数据库表或视图名 ", con

MeAutoRedraw = True

rsMoveFirst

Dim ptr As Integer

For ptr = 0 To 20

Print rsFields(ptr)Name, 注:Name表示是表格的列名。

Next ptr

While Not rsEOF()

Print

For ptr = 0 To 20

Print rsFields(ptr)Value, 注:Value表示是表格的数值。

Next ptr

rsMoveNext

Wend

End Sub

用ADODC方法更简单:

在窗口中建立:Command1,CAdodc1及DataDrid1,设置好CAdodc1的连接属性,见前所述

Command1_Click()

MeCaption = "NAME"

MeCls

Set DataDrid1=Adodc1

End Sub

HTML是无法读取数据库的,HTML是页面前端脚本语言,要想从HTML网页中获取SQL数据库里的数据,需要借助JSP或ASP或PHP或RUBY等语言来实现。

SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(base table);存储模式(内模式)称为“存储文件”(stored file);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。

扩展资料

SQL语言的组成:

1、一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。

2、一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。

3、一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。

4一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。

5用户可以用SQL语句对视图和基本表进行查询等 *** 作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。

6SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL和Ada语言等。

参考资料:百度百科▬SQL数据库

以上就是关于如何通过SQL语句从数据库读取数据,在把读到的数据写入另一个新建表中去删除原来表全部的内容,包括:如何通过SQL语句从数据库读取数据,在把读到的数据写入另一个新建表中去删除原来表、wincc通过opc远程读取sql数据库、怎样从sql数据库读写数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存