Example #1
0
 // Note: added by jokedst
 /// <summary>
 /// Gets column name
 /// </summary>
 /// <param name="index">index of column</param>
 /// <returns>Name of column</returns>
 public string ColumnName(int index)
 {
     return(Sqlite3.sqlite3_column_name(vm, index));
 }
Example #2
0
        // private function for creating Column Names
        // Return number of colums read
        private int ReadColumnNames(Vdbe vm, DataTable table)
        {
            String columnName = "";
            int    columnType = 0;
            // returns number of columns returned by statement
            int columnCount =
#if NET_35
                Sqlite3.ColumnCount
#else
                Sqlite3.sqlite3_column_count
#endif
                    (vm);

            object[] columnValues = new object[columnCount];

            try
            {
                // reads columns one by one
                for (int i = 0; i < columnCount; i++)
                {
                    columnName =
#if NET_35
                        Sqlite3.ColumnName
#else
                        Sqlite3.sqlite3_column_name
#endif
                            (vm, i);

                    columnType =
#if NET_35
                        Sqlite3.ColumnType
#else
                        Sqlite3.sqlite3_column_type
#endif
                            (vm, i);

                    switch (columnType)
                    {
                    case Sqlite3.SQLITE_INTEGER:
                    {
                        // adds new integer column to table
                        table.Columns.Add(columnName, Type.GetType("System.Int64"));
                        break;
                    }

                    case Sqlite3.SQLITE_FLOAT:
                    {
                        table.Columns.Add(columnName, Type.GetType("System.Double"));
                        break;
                    }

                    case Sqlite3.SQLITE_TEXT:
                    {
                        table.Columns.Add(columnName, Type.GetType("System.String"));
                        break;
                    }

                    case Sqlite3.SQLITE_BLOB:
                    {
                        table.Columns.Add(columnName, Type.GetType("System.byte[]"));
                        break;
                    }

                    default:
                    {
                        table.Columns.Add(columnName, Type.GetType("System.String"));
                        break;
                    }
                    }
                }
            }
            catch
            {
                return(0);
            }
            return(table.Columns.Count);
        }