HI Here for exporting is there go through this and do that by using thias i
think


public class DatabaseAssistant
{
        private static final String EXPORT_FILE_NAME = "/sdcard/export.xml";

        private Context _ctx;
        private SQLiteDatabase _db;
        private Exporter _exporter;

        public DatabaseAssistant( Context ctx, SQLiteDatabase db )
        {
                _ctx = ctx;
                _db = db;

                try
                {
                        // create a file on the sdcard to export the
                        // database contents to
                        File myFile = new File( EXPORT_FILE_NAME );
                        myFile.createNewFile();

                        FileOutputStream fOut =  new FileOutputStream(myFile);
                        BufferedOutputStream bos = new
BufferedOutputStream( fOut );

                        _exporter = new Exporter( bos );
                }
                catch (FileNotFoundException e)
                {
                        e.printStackTrace();
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
        }

        public void exportData( )
        {
                log( "Exporting Data" );

                try
                {
                        _exporter.startDbExport( _db.getPath() );

                        // get the tables out of the given sqlite database
                        String sql = "SELECT * FROM sqlite_master";

                        Cursor cur = _db.rawQuery( sql, new String[0] );
                        Log.d("db", "show tables, cur size " + cur.getCount() );
                        cur.moveToFirst();

                        String tableName;
                        while ( cur.getPosition() < cur.getCount() )
                        {
                                tableName = cur.getString( cur.getColumnIndex( 
"name" ) );
                                log( "table name " + tableName );

                                // don't process these two tables since they 
are used
                                // for metadata
                                if ( ! tableName.equals( "android_metadata" ) &&
                                        ! tableName.equals( "sqlite_sequence" ) 
)
                                {
                                        exportTable( tableName );
                                }

                                cur.moveToNext();
                        }
                        _exporter.endDbExport();
                        _exporter.close();
                }
                catch (IOException e)
                {
                        e.printStackTrace();
                }
        }

        private void exportTable( String tableName ) throws IOException
        {
                _exporter.startTable(tableName);

                // get everything from the table
                String sql = "select * from " + tableName;
                Cursor cur = _db.rawQuery( sql, new String[0] );
                int numcols = cur.getColumnCount();

                log( "Start exporting table " + tableName );

//              // logging
//              for( int idx = 0; idx < numcols; idx++ )
//              {
//                      log( "column " + cur.getColumnName(idx) );
//              }

                cur.moveToFirst();

                // move through the table, creating rows
                // and adding each column with name and value
                // to the row
                while( cur.getPosition() < cur.getCount() )
                {
                        _exporter.startRow();
                        String name;
                        String val;
                        for( int idx = 0; idx < numcols; idx++ )
                        {
                                name = cur.getColumnName(idx);
                                val = cur.getString( idx );
                                log( "col '" + name + "' -- val '" + val + "'" 
);

                                _exporter.addColumn( name, val );
                        }

                        _exporter.endRow();
                        cur.moveToNext();
                }

                cur.close();

                _exporter.endTable();
        }

        private void log( String msg )
        {
                Log.d( "DatabaseAssistant", msg );
        }

        class Exporter
        {
                private static final String CLOSING_WITH_TICK = "'>";
                private static final String START_DB = "<export-database 
name='";
                private static final String END_DB = "</export-database>";
                private static final String START_TABLE = "<table name='";
                private static final String END_TABLE = "</table>";
                private static final String START_ROW = "<row>";
                private static final String END_ROW = "</row>";
                private static final String START_COL = "<col name='";
                private static final String END_COL = "</col>";

                private BufferedOutputStream _bos;

                public Exporter() throws FileNotFoundException
                {
                        this( new BufferedOutputStream(
                                        _ctx.openFileOutput( EXPORT_FILE_NAME,
                                        Context.MODE_WORLD_READABLE ) ) );
                }

                public Exporter( BufferedOutputStream bos )
                {
                        _bos = bos;
                }

                public void close() throws IOException
                {
                        if ( _bos != null )
                        {
                                _bos.close();
                        }
                }

                public void startDbExport( String dbName ) throws IOException
                {
                        String stg = START_DB + dbName + CLOSING_WITH_TICK;
                        _bos.write( stg.getBytes() );
                }

                public void endDbExport() throws IOException
                {
                        _bos.write( END_DB.getBytes() );
                }

                public void startTable( String tableName ) throws IOException
                {
                        String stg = START_TABLE + tableName + 
CLOSING_WITH_TICK;
                        _bos.write( stg.getBytes() );
                }

                public void endTable() throws IOException
                {
                        _bos.write( END_TABLE.getBytes() );
                }

                public void startRow() throws IOException
                {
                        _bos.write( START_ROW.getBytes() );
                }

                public void endRow() throws IOException
                {
                        _bos.write( END_ROW.getBytes() );
                }

                public void addColumn( String name, String val ) throws 
IOException
                {
                        String stg = START_COL + name + CLOSING_WITH_TICK + val 
+ END_COL;
                        _bos.write( stg.getBytes() );
                }
        }

        class Importer
        {

        }

}



On Wed, Sep 9, 2009 at 11:02 AM, tstanly <[email protected]> wrote:

>
> hello,
>
> I have a question about the SQLlite,
> is it possiable import existed database or tables in the Android
> SQLlite?
> or can Android SQLite link to external database via Internet?
> I search for this topic in this group,and someone mention that Android
> not
> support for JDBC connection.
>
> so can someone give me some suggestion?
>
> thanks!
> >
>


-- 
Regards
-------------------
Desu Vinod Kumar
[email protected]
09176147148

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to