공부/컴퓨터
[VB.Net] mdb에서 ADO.Net 과 트랜잭션 사용하기
찬
2005. 1. 23. 22:11
반응형
http://www.devpia.com/Forum/BoardView.aspx?no=9569&page=1&Tpage=1&forumname=vbnet_qa&stype=&ctType=&answer=&KeyR=titlecontent&KeyC=
제 경우는 access mdb를 가지고 한 예제입니다.
저도 vb.net을 잘 몰라 직접 sql문장을 가지고 구현 했습니다.
아래는 dataset을 사용하지 않고 직접 db를 핸들링하는 경우입니다.
Public Sub MeasurementValueTableCreate(ByVal TableName As String, ByVal DBConnection As OleDbConnection)
Dim strSQL As String
Dim oleTran As OleDbTransaction
Dim str As String
Dim i As Integer = 0
Dim OleDbTableCreateCommand1 = New System.Data.OleDb.OleDbCommand
str = TableName
OleDbTableCreateCommand1.Connection = DBConnection
Dim strC1, strC2, strC3 As String
strC1 = "ID"
strC2 = "계측일시"
'cnt_SensorUsed 는 계측시 센서 갯수죠! 즉, id와 계측일시외 추가되는 컬럼의 숫자입니다.
' 총 컬럼수 = cnt_SensorUsed +2
strSQL = "Create table [" + str + "] (" + _
strC1 + " integer Constraint PrimaryKey Primary Key, " + _
strC2 + " date"
For i = 0 To (cnt_SensorUsed - 1) Step 1
strSQL = strSQL + ", " + Unit_SensorItem(i) + " single "
Next
strSQL = strSQL + " )"
OleDbTableCreateCommand1.CommandText = strSQL
DBConnection.Open()
Try
oleTran = OleDbConnection1.BeginTransaction
OleDbTableCreateCommand1.Transaction = oleTran
OleDbTableCreateCommand1.ExecuteNonQuery()
oleTran.Commit()
Catch err As OleDbException
oleTran.Rollback()
MsgBox(err.Message, MsgBoxStyle.Critical, "오류")
End Try
DBConnection.Close()
End Sub
도움이 되셨기를 바랍니다.
제 경우는 access mdb를 가지고 한 예제입니다.
저도 vb.net을 잘 몰라 직접 sql문장을 가지고 구현 했습니다.
아래는 dataset을 사용하지 않고 직접 db를 핸들링하는 경우입니다.
Public Sub MeasurementValueTableCreate(ByVal TableName As String, ByVal DBConnection As OleDbConnection)
Dim strSQL As String
Dim oleTran As OleDbTransaction
Dim str As String
Dim i As Integer = 0
Dim OleDbTableCreateCommand1 = New System.Data.OleDb.OleDbCommand
str = TableName
OleDbTableCreateCommand1.Connection = DBConnection
Dim strC1, strC2, strC3 As String
strC1 = "ID"
strC2 = "계측일시"
'cnt_SensorUsed 는 계측시 센서 갯수죠! 즉, id와 계측일시외 추가되는 컬럼의 숫자입니다.
' 총 컬럼수 = cnt_SensorUsed +2
strSQL = "Create table [" + str + "] (" + _
strC1 + " integer Constraint PrimaryKey Primary Key, " + _
strC2 + " date"
For i = 0 To (cnt_SensorUsed - 1) Step 1
strSQL = strSQL + ", " + Unit_SensorItem(i) + " single "
Next
strSQL = strSQL + " )"
OleDbTableCreateCommand1.CommandText = strSQL
DBConnection.Open()
Try
oleTran = OleDbConnection1.BeginTransaction
OleDbTableCreateCommand1.Transaction = oleTran
OleDbTableCreateCommand1.ExecuteNonQuery()
oleTran.Commit()
Catch err As OleDbException
oleTran.Rollback()
MsgBox(err.Message, MsgBoxStyle.Critical, "오류")
End Try
DBConnection.Close()
End Sub
도움이 되셨기를 바랍니다.
반응형