- [VB.NET|SQLServer] レコードの削除・挿入・更新(トランザクション有): (2005/11/01)
- [ASP.NET|SQL Server] SQL Server に接続: (2005/10/06)
- [ASP.NET|SQL Server] SQLServer認証 と WINDOWS認証: (2005/10/06)
- [ASP.NET|SQL Server] SQL Server へアップデート: (2005/10/06)
- [ASP.NET|SQL Server] SQL Server からドロップダウンリストへ: (2005/10/06)
- [ASP.NET|SQL Server] SQL Server から一件アイテム取得: (2005/10/06)
- [ASP.NET|SQL Server] SQL Server から複数アイテム取得: (2005/10/06)
- [SQL Server] SQL Serverデータ型: (2005/07/30)
[VB.NET|SQLServer] レコードの削除・挿入・更新(トランザクション有)
'*** 宣言 Imports System.Data.SqlClient Private Conn As SqlConnection Private DA As SqlDataAdapter Private DS As DataSetDim strConn As String = _
"Server=localhost;User ID=***;Password=***;database=Test;"
Dim SqlTran As SqlTransaction
Dim strSQL As String
Dim cmdSQL As SqlCommandDim dRow As DataRow
Dim dCol As DataColumnDim i As Integer
Dim j As Integer'*** Form_Load
Me.Conn = New SqlConnection(strConn)
Me.DA = New SqlDataAdapter
Me.DS = New DataSet
Me.Conn.Open()'*** Form_Closed
Me.DS.Dispose()
Me.DA.Dispose()
Me.Conn.Close()
Me.Conn.Dispose()
'排他処理する場合? Me.SqlTran = Me.Conn.BeginTransaction(IsolationLevel.Serializable) strSQL = "SELECT * FROM TestTable WITH(ROWLOCK, UPDLOCK) ORDER BY TestCol1 ASC"
'--- SELECT Try Me.SqlTran = Me.Conn.BeginTransaction()strSQL = "SELECT * FROM TestTable ORDER BY TestCol1 ASC"
Me.cmdSQL = New SqlCommand(strSQL, Me.Conn, Me.SqlTran)
Me.DA.SelectCommand = Me.cmdSQLMe.DS.Clear()
Me.DA.Fill(Me.DS, "TestTable")Call ListView_Disp(Me.DS)
Me.SqlTran.Commit()Catch ex As Exception
Debug.WriteLine(ex.ToString)
MessageBox.Show(ex.ToString)
Me.SqlTran.Rollback()
Finally
Me.cmdSQL.Dispose()
Me.SqlTran.Dispose()
End Try
'--- INSERT dRow = Me.DS.Tables("TestTable").NewRow dRow(0) = CInt(Me.TextBox1.Text) dRow(1) = CStr(Me.TextBox2.Text) dRow(2) = CStr(Me.TextBox3.Text) Me.DS.Tables("TestTable").Rows.Add(dRow)Try
Me.SqlTran = Me.Conn.BeginTransaction()strSQL = "INSERT INTO TestTable VALUES (@Col1, @Col2, @Col3)"
Me.cmdSQL = New SqlCommand(strSQL, Me.Conn, Me.SqlTran)
Me.cmdSQL.Parameters.Add("@Col1", SqlDbType.Int, 4, "TestCol1")
Me.cmdSQL.Parameters.Add("@Col2", SqlDbType.VarChar, 50, "TestCol2")
Me.cmdSQL.Parameters.Add("@Col3", SqlDbType.VarChar, 50, "TestCol3")
Me.DA.InsertCommand = Me.cmdSQLMe.DA.InsertCommand.Parameters("@Col1").Value = CInt(Me.TextBox1.Text)
Me.DA.InsertCommand.Parameters("@Col2").Value = CStr(Me.TextBox2.Text)
Me.DA.InsertCommand.Parameters("@Col2").Value = CStr(Me.TextBox3.Text)
Me.DA.Update(Me.DS, "TestTable")Call ListView_Disp(Me.DS)
Me.SqlTran.Commit()Catch ex As Exception
Debug.WriteLine(ex.ToString)
MessageBox.Show(ex.ToString)
Me.SqlTran.Rollback()
Finally
Me.cmdSQL.Dispose()
Me.SqlTran.Dispose()
End Try
'--- DELETE For Each dRow In DS.Tables("TestTable").Rows If CInt(dRow(0)) = CInt(TextBox1.Text) Then dRow.Delete() Exit For End If NextTry
Me.SqlTran = Me.Conn.BeginTransactionstrSQL = "DELETE FROM TestTable WHERE TestCol1 = @Col1"
Me.cmdSQL = New SqlCommand(strSQL, Me.Conn, Me.SqlTran)
Me.cmdSQL.Parameters.Add("@Col1", SqlDbType.Int, 4, "TestCol1")
Me.DA.DeleteCommand = Me.cmdSQLMe.DA.DeleteCommand.Parameters("@Col1").Value = CInt(Me.TextBox1.Text)
Me.DA.Update(Me.DS, "TestTable")Call ListView_Disp(Me.DS)
Me.SqlTran.Commit()Catch ex As Exception
Debug.WriteLine(ex.ToString)
MessageBox.Show(ex.ToString)
Me.SqlTran.Rollback()
Finally
Me.cmdSQL.Dispose()
Me.SqlTran.Dispose()
End Try
'--- UPDATE For Each dRow In DS.Tables("TestTable").Rows If CInt(dRow(0)) = CInt(TextBox1.Text) Then dRow(1) = TextBox2.Text dRow(2) = TextBox3.Text Exit For End If NextTry
Me.SqlTran = Me.Conn.BeginTransactionstrSQL = "UPDATE TestTable SET TestCol2 = @Col2, TestCol3 = @Col3 WHERE TestCol1 = @Col1"
Me.cmdSQL = New SqlCommand(strSQL, Me.Conn, Me.SqlTran)
Me.cmdSQL.Parameters.Add("@Col1", SqlDbType.Int, 4, "TestCol1")
Me.cmdSQL.Parameters.Add("@Col2", SqlDbType.VarChar, 50, "TestCol2")
Me.cmdSQL.Parameters.Add("@Col3", SqlDbType.VarChar, 50, "TestCol3")
DA.UpdateCommand = Me.cmdSQLMe.DA.UpdateCommand.Parameters("@Col1").Value = CInt(Me.TextBox1.Text)
Me.DA.UpdateCommand.Parameters("@Col2").Value = CStr(Me.TextBox2.Text)
Me.DA.UpdateCommand.Parameters("@Col2").Value = CStr(Me.TextBox3.Text)
Me.DA.Update(Me.DS, "TestTable")Call ListView_Disp(Me.DS)
Me.SqlTran.Commit()Catch ex As Exception
Debug.WriteLine(ex.ToString)
MessageBox.Show(ex.ToString)
Me.SqlTran.Rollback()
Finally
Me.cmdSQL.Dispose()
Me.SqlTran.Dispose()
End Try
2005 / 11 / 01
[ASP.NET|SQL Server] SQL Server に接続
Dim Conn As New System.Data.SqlClient.SqlConnection Dim Cmd As New System.Data.SqlClient.SqlCommandConn.ConnectionString = "server=localhost;User=sa;Password=;database=TEST;"
Cmd.Connection = Conn
Cmd.CommandText = "SELECT * FROM UserTable ORDER BY UserName ASC"
Dim Conn As System.Data.SqlClient.SqlConnection Dim Cmd As System.Data.SqlClient.SqlCommand Conn = New SqlConnection("server=localhost;User ID=sa;Password=;database=TEST;") Conn.Open()Cmd = New SqlCommand("SELECT * FROM UserTable ORDER BY UserName ASC", Conn)
'終了処理 Cmd.Dispose() Conn.Dispose()
2005 / 10 / 06
[ASP.NET|SQL Server] SQLServer認証 と WINDOWS認証
Dim Conn As New System.Data.SqlClient.SqlConnection Dim strConn As StringIf Type = "SQLServerSQL" Then
'▼SQLServer認証▼
strConn = "Persist Security Info=True;" & _
"database=master;" & _
"server=localhost;" & _
"User=sa;" & _
"Password=;"ElseIf Type = "SQLServerWIN" Then
'▼WINDOWS認証▼
strConn = "Integrated Security=SSPI;" & _
"Persist Security Info=False;" & _
"Initial Catalog=master;" & _
"Data Source=hocalhost;"
End IfConn.ConnectionString = strConn
2005 / 10 / 06
[ASP.NET|SQL Server] SQL Server へアップデート
Dim NewPass As String NewPass = "****" Dim Conn As SqlConnection Dim Cmd As SqlCommandConn = New SqlConnection("server=localhost;User ID=sa;Password=;database=TEST;")
Conn.Open()Cmd = New SqlCommand("UPDATE UsersMst SET Pass=@Pass WHERE Id=@Id", Conn)
Cmd.Parameters.Add("@Id", SqlDbType.VarChar, 6)
Cmd.Parameters("@Id").Value = User.Identity.Name
Cmd.Parameters.Add("@Pass", NewPass)
Cmd.ExecuteNonQuery()Cmd.Dispose()
Conn.Dispose()
2005 / 10 / 06
[ASP.NET|SQL Server] SQL Server からドロップダウンリストへ
Dim Conn As SqlConnection Dim Cmd As SqlCommand Dim DR As SqlDataReaderConn = New SqlConnection("server=localhost;User ID=sa;Password=;database=TEST;")
Conn.Open()Cmd = New SqlCommand("SELECT * FROM RolesMst ORDER BY RoleNO ASC", Conn)
'クエリを実行して、DataReader を確立する
DR = Cmd.ExecuteReaderddlRole.Items.Add(New ListItem("選択してください", ""))
'DataReader から1行ずつ読み込む
Do While (DR.Read())
'ドロップダウンリストに各フィールドの内容を追加する
ddlRole.Items.Add(New ListItem(DR.Item("RoleText"), DR.Item("RoleValue")))
LoopDR.Close()
Cmd.Dispose()
Conn.Dispose()ddlRole.SelectedIndex = 0
2005 / 10 / 06
[ASP.NET|SQL Server] SQL Server から一件アイテム取得
Dim Conn As SqlConnection Dim Cmd As SqlCommand'コネクションセット
Conn = New SqlConnection("server=localhost;User ID=sa;Password=;database=TEST;")
Conn.Open()'パスワード
Cmd = New SqlCommand("SELECT Pass FROM UsersMst WHERE Id=@Id", Conn)
Cmd.Parameters.Add("@Id", SqlDbType.VarChar, 6)
Cmd.Parameters("@Id").Value = TB_Id
DB_Pass = Cmd.ExecuteScalar'ロール
Cmd = New SqlCommand("SELECT Role FROM UsersMst WHERE Id=@Id", Conn)
Cmd.Parameters.Add("@id", SqlDbType.VarChar, 20)
Cmd.Parameters("@Id").Value = TB_IdIf (IsDBNull(Cmd.ExecuteScalar)) Then
DB_Role = ""
Else
DB_Role = Cmd.ExecuteScalar
End IfCmd.Dispose()
Conn.Dispose()
2005 / 10 / 06
[ASP.NET|SQL Server] SQL Server から複数アイテム取得
Dim Conn As SqlConnection Dim Cmd As SqlCommand Dim DR As SqlDataReader'コネクションセット
Conn = New SqlConnection("server=localhost;User ID=sa;Password=;database=TEST;")
Conn.Open()'コマンドセット
Cmd = New SqlCommand("SELECT * FROM UsersMst WHERE Id=@Id", Conn)
Cmd.Parameters.Add("@Id", SqlDbType.VarChar, 6)
Cmd.Parameters("@Id").Value = User.Identity.Name'データリーダーセット
DR = Cmd.ExecuteReader
DR.Read()
DB_Pass = DR.Item("Pass") 'DBの列名
DB_LName = DR.Item("LName")
DB_FName = DR.Item("FName")
DB_Kana = DR.Item("Kana")'後処理
DR.Close()
Cmd.Dispose()
Conn.Dispose()
2005 / 10 / 06
[SQL Server] SQL Serverデータ型
型 | 説明 |
---|---|
bit | 1 または 0 の整数データを格納するデータ型です。 |
int | -2,147,483,648 から 2,147,483,647 までの整数データを格納するデータ型です。 |
smallint | -32,768 から 32,767 までの整数データを格納するデータ型です。 |
tinyint | 0 から 255 までの整数データを格納するデータ型です。 |
money | -922,337,203,685,477.5808 から922,337,203,685,477.5807 までの金額データ値を格納するデータ型です。 |
smallmoney | -214,748.3648 から +214,748.3647 までの金額データ値を格納するデータ型です。 |
float | -1.79E + 308 から 1.79E + 308 までの浮動小数点数のデータを格納するデータ型です。 |
real | -3.40E + 38 から 3.40E + 38 までの浮動小数点数のデータを格納するデータ型です。 |
datetime | 1753 年 1 月 1 日から 9999 年 12 月 31 日までの日付と時刻データを格納するデータ型です。 |
smalldatetime | 1900 年 1 月 1 日から 2079 年 6 月 6 日までの日付と時刻データを格納するデータ型です。 |
char | 8,000 文字以内の固定長の Unicode 以外の文字データを格納するデータ型です。 |
varchar | 8,000 文字以内の可変長の Unicode 以外のデータを格納するデータ型です。 |
text | 2,147,483,647 文字以内の可変長の Unicode 以外のデータを格納するデータ型です。 |
binary | 8,000 バイト以内の固定長のバイナリ データを格納するデータ型です。 |
varbinary | 8,000 バイト以内の可変長のバイナリ データを格納するデータ型です。 |
image | 2,147,483,647 バイト以内の可変長のバイナリ データを格納するデータ型です。 |
2005 / 07 / 30