vb.net中向数据库中定时添加数据?紧急求助!

wfl_1000 2009-01-11 02:50:12
我在程序一个按钮中中向数据库中添加了表,并且想在另一个按钮中向表中添加数据,
点击一下添加一次,现在的问题是只可以添加一次数据,再点击时提示表已经存在,
请问怎解决?麻烦各位,情况紧急!
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

strYear = System.DateTime.Now.Year.ToString()
strMonth = System.DateTime.Now.Month.ToString()
strDate = System.DateTime.Now.Day.ToString()
theName = "Table" + strYear + strMonth + strDate

'Dim sql As String = Nothing
'Dim MyInsert As String = Nothing
conn = New SqlConnection(ConnectionString)
If conn.State = ConnectionState.Open Then
conn.Close()
End If
conn.ConnectionString = ConnectionString
conn.Open()
sql = "CREATE TABLE " + theName + "" + "(myid NVARCHAR(50)," + "myname NVARCHAR(50) NOT Null,myaddress NVARCHAR(50))"
cmd = New SqlCommand(sql, conn)
Button2.Enabled = True

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
conn = New SqlConnection(ConnectionString)
If conn.State = ConnectionState.Open Then
conn.Close()
End If
conn.ConnectionString = ConnectionString
conn.Open()
cmd = New SqlCommand(sql, conn)
Try
cmd.ExecuteNonQuery()
'添加记录
MyInsert = "INSERT INTO " + theName + "(myid,myname,myaddress)values(01,'王富力','dizhi')"
cmd = New SqlCommand(MyInsert, conn)
cmd.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message.ToString())
End Try
End Sub

...全文
116 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
tjficcbw 2009-01-18
  • 打赏
  • 举报
回复
就是在按钮1建立表,按钮2就只插入,不建立表,这样不就行了,
为什么每次在插入时要先建立表呢,
wfl_1000 2009-01-14
  • 打赏
  • 举报
回复
求助中!
gbjgg 2009-01-13
  • 打赏
  • 举报
回复
不懂,up
noenoughmemory 2009-01-13
  • 打赏
  • 举报
回复
不懂,up
noenoughmemory 2009-01-13
  • 打赏
  • 举报
回复
友情up
noenoughmemory 2009-01-13
  • 打赏
  • 举报
回复
友情up
wfl_1000 2009-01-13
  • 打赏
  • 举报
回复
vb.net 代码怎么写?
Fibona 2009-01-12
  • 打赏
  • 举报
回复
string sql=@" 
if not exists (select 1
from sysobjects
where id = object_id('"+tablename+@"')
and type = 'U')
begin
create table tablename(

myid NVARCHAR(50),myname NVARCHAR(50) NOT Null,myaddress NVARCHAR(50)
);

end ";
Fibona 2009-01-12
  • 打赏
  • 举报
回复
建表的时候加上判断,

string sql=@"
if not exists (select 1
from sysobjects
where id = object_id('"+tablename+@"')
and type = 'U')
begin
create table tablename(

(myid NVARCHAR(50),myname NVARCHAR(50) NOT Null,myaddress NVARCHAR(50))
);

end ";
wfl_1000 2009-01-12
  • 打赏
  • 举报
回复
怎么写才是建立一次呢?请指教!
tjficcbw 2009-01-11
  • 打赏
  • 举报
回复
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

strYear = System.DateTime.Now.Year.ToString()
strMonth = System.DateTime.Now.Month.ToString()
strDate = System.DateTime.Now.Day.ToString()
theName = "Table" + strYear + strMonth + strDate

'Dim sql As String = Nothing
'Dim MyInsert As String = Nothing
conn = New SqlConnection(ConnectionString)
If conn.State = ConnectionState.Open Then
conn.Close()
End If
conn.ConnectionString = ConnectionString
conn.Open()
sql = "CREATE TABLE " + theName + "" + "(myid NVARCHAR(50)," + "myname NVARCHAR(50) NOT Null,myaddress NVARCHAR(50))"
cmd = New SqlCommand(sql, conn) '这的SQL是建立表的语句
Button2.Enabled = True

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
conn = New SqlConnection(ConnectionString)
If conn.State = ConnectionState.Open Then
conn.Close()
End If
conn.ConnectionString = ConnectionString
conn.Open()
cmd = New SqlCommand(sql, conn) '这的SQL是建立表的语句
Try
cmd.ExecuteNonQuery() '这是执行建立表的语句
'添加记录
MyInsert = "INSERT INTO " + theName + "(myid,myname,myaddress)values(01,'王富力','dizhi')"
cmd = New SqlCommand(MyInsert, conn) '这的MyInsert是插入的语句
cmd.ExecuteNonQuery() '这是执行插入的语句
Catch ex As Exception
MessageBox.Show(ex.Message.ToString())
End Try
你的按钮1和2全有建立表的语句,这不可能总建立一个表,
表建立一次就行了,不要每次建立一次这样不行,
ojekleen 2009-01-11
  • 打赏
  • 举报
回复
你是某个字段有设唯一列吧。。。然后重复插入相同的数据就出错吧?

16,722

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧