Exemplo n.º 1
0
        private static DataTable combinedTable(TableMap map, SQLiteDatabase db)
        {
            string    command  = String.Format("select {0} from {1}", selectString(map), joinString(map.OriginalTableNames));
            DataTable outTable = db.GetDataFromCommand(command);

            return(outTable);
        }
        public static void Explain(string command, SQLiteDatabase db)
        {
            var explainer = "explain query plan " + command;
            var explainDT = db.GetDataFromCommand(explainer);

            foreach (DataRow row in explainDT.Rows)
            {
                logger.Debug(row["detail"]);
            }
        }
        public static List <string> TableFields(string tableName, SQLiteDatabase db)
        {
            string        command     = "select * from " + tableName + " limit 1";
            DataTable     data        = db.GetDataFromCommand(command);
            List <string> tableFields = new List <string>();

            foreach (DataColumn col in data.Columns)
            {
                tableFields.Add(col.ColumnName);
            }
            return(tableFields);
        }
        public static List <string> TableNames(SQLiteDatabase db)
        {
            string        command    = "select name from sqlite_master where type = 'table' order by 1";
            DataTable     tables     = db.GetDataFromCommand(command);
            List <string> tableNames = new List <string>();

            foreach (DataRow row in tables.Rows)
            {
                tableNames.Add(row["Name"].ToString());
            }
            return(tableNames);
        }
        public static List <string> PrimaryKeys(string tableName, SQLiteDatabase db)
        {
            string        command     = "PRAGMA table_info(" + tableName + ")";
            DataTable     data        = db.GetDataFromCommand(command);
            List <string> primaryKeys = new List <string>();

            foreach (DataRow row in data.Rows)
            {
                if (row["pk"].ToString() != "0")
                {
                    primaryKeys.Add(row["name"].ToString());
                }
            }
            return(primaryKeys);
        }