使用vb.net在现有sqlite数据库中创建新表

ffvjumwh  于 7个月前  发布在  SQLite
关注(0)|答案(1)|浏览(102)

我有一个VB.Net应用程序,已创建,并在SQLite DB中有大约2年的数据我设计了多个表中的一个错误的方案,现在我的搜索功能不正确。该表的所有列都设置为TEXT数据。所以我需要一个新表,其中一些列设置为INTEGER。我试图创建一个不允许的新表。OK,所以从应用程序中删除DB,并将旧数据写入新的和改进的表。**问题是我把旧的数据库与它的表,所以我可以写数据到新的表?**我已经看了ATTACH语法,但不知道如何为我的问题工作?我已经尝试使用cmd语句,但我的Windows 7告诉我,它不能罚款sqlite3我不是真实的好与cmd行编程,所以这是一个非初学者抱歉。

所以问题是如何用VB.Net创建一个新DB并从旧DB中移动数据

Public Sub makeTxData()

    'create table TxDataTable String for cmd
    Dim create_table As String = String.Empty
    create_table = "CREATE TABLE IF NOT EXISTS TxData(
                    TID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
                    txSortDate TEXT,
                    txYear TEXT,
                    txType TEXT,
                    txAmount TEXT,
                    txCKNum TEXT,
                    txDesc TEXT,
                    txBalance TEXT,
                    txSearchMonth TEXT)"

    Dim dbTable As String = "TxDataTable"

字符串
我希望这个带有txYear和txSearchMonth的表是整数

91zkwejq

91zkwejq1#

我不想尝试写一个按钮点击代码,所以
我使用DB浏览器查看数据库,并按此顺序执行了两个命令
DB浏览器有一个名为执行SQL的选项卡
DB Browser Link
第一

ALTER TABLE TxData ADD NxData INTEGER

字符串
TxData是表名,NxData是INTEGER的新列
第二步,将列txSearchMonth中的数据移动到新列NxData

UPDATE TxData SET NxData = txSearchMonth

相关问题