1

fTest.csというメインフォーム名があります

このメインには、SQLサーバーとSQLiteにデータを保存するためのボタンがあります

ここに私のコードがあります

private void btnSave_Click(object sender, EventArgs e)
        {
            Dictionary<String, String> dataSqlite = new Dictionary<String, String>();
            Dictionary<String, String> dataSqlserv = new Dictionary<String, String>();
            dataSqlite.Add("name", "puja");
            dataSqlite.Add("score", "3232");
            dataSqlserv.Add("ID", "32");
            dataSqlserv.Add("Name", "puja lagi");


             cDatabaseSQLite.Insert("highscore", dataSqlserv);
            cDatabaseSQLite.Insert("highscore", dataSqlserv);
            cDatabaseSQLite.Insert("highscore", dataSqlserv);

            cDatabaseSQLServer.Insert("tblTest", dataSqlite);
            cDatabaseSQLServer.Insert("tblTest", dataSqlite);
        }

そして私はcDatabases.csで挿入メソッドを呼び出します

public bool Insert(String tableName, Dictionary<String, String> data)
        {
            switch (sqlType)
            {
                case DATABASE_SQL_TYPE.DATABASE_SQL_TYPE_SQLITE:
                    return cSQLite.Insert(tableName, data);
                case DATABASE_SQL_TYPE.DATABASE_SQL_TYPE_MSSQL:
                    return cSQL.Insert(tableName, data);
            }
            return false;
        }

ここに私のsqliteデータベースに挿入します

public bool Insert(String tableName, Dictionary<String, String> data)
        {
            String columns = "";
            String values = "";
            Boolean returnCode = true;
            foreach (KeyValuePair<String, String> val in data)
            {
                columns += String.Format(" {0},", val.Key.ToString());
                values += String.Format(" '{0}',", val.Value);
            }
            columns = columns.Substring(0, columns.Length - 1);
            values = values.Substring(0, values.Length - 1);
            try
            {
                this.ExecuteNonQuery(String.Format("insert into {0}({1}) values({2});", tableName, columns, values));
            }
            catch (Exception fail)
            {
                MessageBox.Show(fail.Message);
                returnCode = false;
            }
            return returnCode;
        }

これはSQLサーバー挿入データベースです

public bool Insert(String tableName, Dictionary<String, String> data)
        {
            String columns = "";
            String values = "";
            Boolean returnCode = true;
            foreach (KeyValuePair<String, String> val in data)
            {
                columns += String.Format(" {0},", val.Key.ToString());
                values += String.Format(" '{0}',", val.Value);
            }
            columns = columns.Substring(0, columns.Length - 1);
            values = values.Substring(0, values.Length - 1);
            try
            {
                this.ExecuteNonQuery(String.Format("insert into {0}({1}) values({2});", tableName, columns, values));
            }
            catch (Exception fail)
            {
                MessageBox.Show(fail.Message);
                returnCode = false;
            }
            return returnCode;
        }

デバッグしてボタンを押して保存しようとすると、データを sqlite とサーバーに保存できないか、データが空です。データを挿入するには?

4

0 に答える 0