Visual Studio 2017에서 SQLite를 사용한 Windows Forms 앱 개발
아직 서버 탐색기나 TableAdaptor를 사용한 GUI에서의 개발에는 대응하지 않는 것 같습니다.
이번에는 DataAdapter를 사용한 개발 방법입니다.
환경
Windows 7 Professional SP1 64bit
Visual Studio 2017 커뮤니티
※사전에 SQLite의 인스톨은 하고 있지 않습니다.
프로젝트 만들기
새 프로젝트에서 Visual Basic, Windows 클래식 데스크톱에서 Windows Forms 응용 프로그램을 선택합니다. (.NET Framework 4.6.1)
System.Date.SQLite 패키지 설치
솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 NuGet 패키지 관리...를 선택합니다.
다음과 같이 나타나면 왼쪽 상단의 찾아보기를 선택하고 검색 영역에 sqlite를 입력합니다.
맨 위에 "System.Date.SQLite"가 표시되면 선택하고 설치 버튼을 누릅니다.
대화 상자가 표시되면 OK 버튼을 누릅니다.
System.Date.SQLite가 설치됩니다.
양식 디자인
폼에 버튼 2개와 데이터 그리드(DataGridView)를 배치합니다.
데이터베이스 작성 버튼을 누르면 데이터베이스(sample.db 파일)가 작성되어 Sample 테이블이 작성되도록 합니다.
검색 버튼을 누르면 샘플 테이블을 검색하여 결과를 데이터 그리드에 표시합니다.
소스 코드
데이터베이스를 작성하고 샘플 테이블을 검색하는 프로그램을 작성하십시오.
Form1.vbImports System.Data.SQLite
Public Class Form1
''' <summary>
''' データベース作成ボタンクリック
''' </summary>
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
Using con As New SQLiteConnection("Data Source=sample.db")
con.Open()
Using cmd As SQLiteCommand = con.CreateCommand()
cmd.CommandText = "CREATE TABLE Sample (ID INTEGER PRIMARY KEY, Name NVARCHAR(128), Age INTEGER)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('一郎', 10)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('二郎', 20)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('三郎', 30)"
cmd.ExecuteNonQuery()
End Using
End Using
MessageBox.Show("Sampleデータベース作成成功", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("Sampleデータベース作成失敗" + Environment.NewLine + ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
''' <summary>
''' 検索ボタンクリック
''' </summary>
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using con As New SQLiteConnection("Data Source=sample.db")
Dim ds As New DataSet
Dim da As New SQLiteDataAdapter("SELECT * FROM Sample", con)
da.Fill(ds, "Sample")
Me.DataGridView1.DataSource = ds.Tables("Sample")
End Using
End Sub
End Class
애플리케이션 실행
애플리케이션을 실행하고 데이터베이스 작성 버튼을 누른 후 검색 버튼을 누르면 샘플 테이블의 검색 결과가 표시됩니다.
Reference
이 문제에 관하여(Visual Studio 2017에서 SQLite를 사용한 Windows Forms 앱 개발), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/akabei/items/3e719d07bdddd6fe56b8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
새 프로젝트에서 Visual Basic, Windows 클래식 데스크톱에서 Windows Forms 응용 프로그램을 선택합니다. (.NET Framework 4.6.1)
System.Date.SQLite 패키지 설치
솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 NuGet 패키지 관리...를 선택합니다.
다음과 같이 나타나면 왼쪽 상단의 찾아보기를 선택하고 검색 영역에 sqlite를 입력합니다.
맨 위에 "System.Date.SQLite"가 표시되면 선택하고 설치 버튼을 누릅니다.
대화 상자가 표시되면 OK 버튼을 누릅니다.
System.Date.SQLite가 설치됩니다.
양식 디자인
폼에 버튼 2개와 데이터 그리드(DataGridView)를 배치합니다.
데이터베이스 작성 버튼을 누르면 데이터베이스(sample.db 파일)가 작성되어 Sample 테이블이 작성되도록 합니다.
검색 버튼을 누르면 샘플 테이블을 검색하여 결과를 데이터 그리드에 표시합니다.
소스 코드
데이터베이스를 작성하고 샘플 테이블을 검색하는 프로그램을 작성하십시오.
Form1.vbImports System.Data.SQLite
Public Class Form1
''' <summary>
''' データベース作成ボタンクリック
''' </summary>
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
Using con As New SQLiteConnection("Data Source=sample.db")
con.Open()
Using cmd As SQLiteCommand = con.CreateCommand()
cmd.CommandText = "CREATE TABLE Sample (ID INTEGER PRIMARY KEY, Name NVARCHAR(128), Age INTEGER)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('一郎', 10)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('二郎', 20)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('三郎', 30)"
cmd.ExecuteNonQuery()
End Using
End Using
MessageBox.Show("Sampleデータベース作成成功", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("Sampleデータベース作成失敗" + Environment.NewLine + ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
''' <summary>
''' 検索ボタンクリック
''' </summary>
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using con As New SQLiteConnection("Data Source=sample.db")
Dim ds As New DataSet
Dim da As New SQLiteDataAdapter("SELECT * FROM Sample", con)
da.Fill(ds, "Sample")
Me.DataGridView1.DataSource = ds.Tables("Sample")
End Using
End Sub
End Class
애플리케이션 실행
애플리케이션을 실행하고 데이터베이스 작성 버튼을 누른 후 검색 버튼을 누르면 샘플 테이블의 검색 결과가 표시됩니다.
Reference
이 문제에 관하여(Visual Studio 2017에서 SQLite를 사용한 Windows Forms 앱 개발), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/akabei/items/3e719d07bdddd6fe56b8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
폼에 버튼 2개와 데이터 그리드(DataGridView)를 배치합니다.
데이터베이스 작성 버튼을 누르면 데이터베이스(sample.db 파일)가 작성되어 Sample 테이블이 작성되도록 합니다.
검색 버튼을 누르면 샘플 테이블을 검색하여 결과를 데이터 그리드에 표시합니다.
소스 코드
데이터베이스를 작성하고 샘플 테이블을 검색하는 프로그램을 작성하십시오.
Form1.vbImports System.Data.SQLite
Public Class Form1
''' <summary>
''' データベース作成ボタンクリック
''' </summary>
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
Using con As New SQLiteConnection("Data Source=sample.db")
con.Open()
Using cmd As SQLiteCommand = con.CreateCommand()
cmd.CommandText = "CREATE TABLE Sample (ID INTEGER PRIMARY KEY, Name NVARCHAR(128), Age INTEGER)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('一郎', 10)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('二郎', 20)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('三郎', 30)"
cmd.ExecuteNonQuery()
End Using
End Using
MessageBox.Show("Sampleデータベース作成成功", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("Sampleデータベース作成失敗" + Environment.NewLine + ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
''' <summary>
''' 検索ボタンクリック
''' </summary>
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using con As New SQLiteConnection("Data Source=sample.db")
Dim ds As New DataSet
Dim da As New SQLiteDataAdapter("SELECT * FROM Sample", con)
da.Fill(ds, "Sample")
Me.DataGridView1.DataSource = ds.Tables("Sample")
End Using
End Sub
End Class
애플리케이션 실행
애플리케이션을 실행하고 데이터베이스 작성 버튼을 누른 후 검색 버튼을 누르면 샘플 테이블의 검색 결과가 표시됩니다.
Reference
이 문제에 관하여(Visual Studio 2017에서 SQLite를 사용한 Windows Forms 앱 개발), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/akabei/items/3e719d07bdddd6fe56b8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Imports System.Data.SQLite
Public Class Form1
''' <summary>
''' データベース作成ボタンクリック
''' </summary>
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
Using con As New SQLiteConnection("Data Source=sample.db")
con.Open()
Using cmd As SQLiteCommand = con.CreateCommand()
cmd.CommandText = "CREATE TABLE Sample (ID INTEGER PRIMARY KEY, Name NVARCHAR(128), Age INTEGER)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('一郎', 10)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('二郎', 20)"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO Sample (Name, Age) VALUES('三郎', 30)"
cmd.ExecuteNonQuery()
End Using
End Using
MessageBox.Show("Sampleデータベース作成成功", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show("Sampleデータベース作成失敗" + Environment.NewLine + ex.Message, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
''' <summary>
''' 検索ボタンクリック
''' </summary>
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using con As New SQLiteConnection("Data Source=sample.db")
Dim ds As New DataSet
Dim da As New SQLiteDataAdapter("SELECT * FROM Sample", con)
da.Fill(ds, "Sample")
Me.DataGridView1.DataSource = ds.Tables("Sample")
End Using
End Sub
End Class
애플리케이션을 실행하고 데이터베이스 작성 버튼을 누른 후 검색 버튼을 누르면 샘플 테이블의 검색 결과가 표시됩니다.
Reference
이 문제에 관하여(Visual Studio 2017에서 SQLite를 사용한 Windows Forms 앱 개발), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/akabei/items/3e719d07bdddd6fe56b8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)