C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: SQLiteのデータベース作成


(過去ログ 117 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■69011 / inTopicNo.1)  SQLiteのデータベース作成
  
□投稿者/ coscos (6回)-(2013/11/28(Thu) 14:04:32)

分類:[VB.NET/VB2005 以降] 

SQLite操作ですが、下のコードですと、データベースファイルが存在しないと作成して、存在していれば、毎回データベースファイルを新しく書き換えます。
既にデータベースファイルが存在する場合は、そのまま使用したいのです。
New=Trueをfalseにしても、ファイルが無ければ無処理です。

If System.IO.File.Exists(db_path & "\" & db_name) Then でファイルの存在をチェックしようにも、挿入場所が良くわかりません。
宜しくお願い致します。


Public Class Form1
Dim db_path As String = Application.StartupPath
Dim db_name As String = "SQLite_1.db"

Dim conn As New SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=True;Compress=True;")

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
conn.Open()
End Sub

Private Sub cboCreate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboCreate.Click
Dim cmd As New SQLiteCommand
cmd = conn.CreateCommand
cmd.CommandText = "CREATE table mp3Lst (mp3Idinteger primary key, mp3File varchar(100))"
cmd.ExecuteNonQuery()
End Sub

End Class
引用返信 編集キー/
■69013 / inTopicNo.2)  Re[1]: SQLiteのデータベース作成
□投稿者/ shu (437回)-(2013/11/28(Thu) 14:58:13)
No69011 (coscos さん) に返信

> Public Class Form1
>     Dim db_path As String = Application.StartupPath
>     Dim db_name As String = "SQLite_1.db"
> 
>     Dim conn As New SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=True;Compress=True;")
ここは変数定義だけにしておいて

   
>     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ここでNewをすればファイルチェックが可能です。

>         conn.Open()
>     End Sub
> 


db_path , db_name , conn をDimで定義するのは公開範囲が分かりにくいのでPrivateとかPublicで定義されて方が
よいと思います。

引用返信 編集キー/
■69015 / inTopicNo.3)  Re[2]: SQLiteのデータベース作成
□投稿者/ coscos (7回)-(2013/11/28(Thu) 15:27:31)
No69013 (shu さん) に返信
ご回答ありがとうございます。
Public conn As Object これで良いでしょうか?
conn = SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=False;Compress=True;")
ここがわかりません。
'SQLiteConnection' は型です。有効な式ではありません。とのエラーが出ます。
大変初歩的な事であろうとは思いますが、わかりません。すみませんがお願い致します。


Public Class Form1
Public db_path As String = Application.StartupPath
Public db_name As String = "SQLite_1.db"
Public conn As Object

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If System.IO.File.Exists(db_path & "\" & db_name) Then
conn = SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=False;Compress=True;")
Else
conn = SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=True;Compress=True;")
End If
conn.Open()
End Sub

Private Sub cboCreate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboCreate.Click
Dim cmd As New SQLiteCommand
cmd = conn.CreateCommand
cmd.CommandText = "CREATE table mp3Lst (mp3Idinteger primary key, mp3File varchar(100))"
cmd.ExecuteNonQuery()
End Sub
End Class


引用返信 編集キー/
■69016 / inTopicNo.4)  Re[3]: SQLiteのデータベース作成
□投稿者/ coscos (8回)-(2013/11/28(Thu) 15:37:39)
No69013 (shu さん) に返信
すみません、わかりました。大変お世話になります。

Public conn As SQLiteConnection

conn = New SQLiteConnection("Version=3;Data Source=" & db_path & "\" & db_name & ";New=False;Compress=True;")

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -