版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 數(shù)據(jù)庫(kù)的相關(guān)操作:Bean: public static final String UNAME=“uname”; private String uname; Bean中靜態(tài)、唯一的 常量 必須 要 賦值。(而且一般要大寫(xiě))(私有的一般要小寫(xiě))SQL語(yǔ)句加雙引號(hào) ” sql ” ,而引號(hào)里面的語(yǔ)句 原樣輸出。create table tabname ( uname varchar ) 全用雙引號(hào)即可。但是 INSERT語(yǔ)句中:insert into tabname(asdf,asfd,sfd)values(asdf,sdf,asdf);Vlaues() 里面的內(nèi)容要有 單 引號(hào)。即在原來(lái) 雙引
2、號(hào) 的基礎(chǔ)上再加上 單引號(hào). 那些個(gè)不變的東西全部放在 雙引號(hào) 里面引起來(lái)只是 變量 不能放在 雙引號(hào) 里面, 而且還有加 上連接符號(hào) + db.execSQL(create table +TABLENAME +( +User._ID + integer primary key ,+User.UNAME + text ,+User.GENDER + text ,+User.REGDATE + text ,+User.CLASSNMAE + text ,+User.DEMO + text ,+User.TAG + text+); );歡迎使用行知匯元教學(xué)管理平臺(tái)!歡迎使用行知匯元教學(xué)管理平臺(tái)!內(nèi)
3、網(wǎng)網(wǎng)址:內(nèi)網(wǎng)網(wǎng)址:11用戶(hù)名:個(gè)人姓的全拼用戶(hù)名:個(gè)人姓的全拼+名的首字母名的首字母例:張小茹例:張小茹用戶(hù)名:用戶(hù)名:zhangxr初始密碼:初始密碼:123 提交問(wèn)題郵箱是:提交問(wèn)題郵箱是:出錯(cuò)了:Caused by: android.database.sqlite.SQLiteException: near tableUserTable: syntax error: create tableUserTable(_id INTEGER PRIMARY KEY,uname text ,classname text ,gender text ,regdat
4、e text ,demo text ,tag text ,)(1)剛開(kāi)始是表名寫(xiě)成了table,而這個(gè)單詞是個(gè)保留字,不能用來(lái)被命名,須改成別的名字。(2)是create table和表名UserTable之間沒(méi)有寫(xiě)空格,所以報(bào)錯(cuò)了。(3)是(,)最后多寫(xiě)了一個(gè)逗號(hào),,這是一個(gè)多余的東西。刪除數(shù)據(jù)庫(kù)的時(shí)候出錯(cuò)了:public Boolean delete(String _id)int data = database.delete(TABLENAME, _id=?, new String_id);這是new String里面的數(shù)據(jù)傳的不是_id,而是傳成了user.get_id().所以就刪除不
5、了數(shù)據(jù)。public class DB extends SQLiteOpenHelperDB db = new DB(getApplicationContext();或 DB db = new DB(this);或 DB db = new DB(context); Public void insert(SQLiteBean bean)SQLiteDatabase database = db.getWritbaleDatabase();String sql=“insert into ”+TABLENAME(表名)+“ ”+”(”+SQLiteBean.CLASSNAME+SQLiteBean.T
6、AG+”)”+” ”+values”(”+ “ “ +“)”; 注意: 單引號(hào)()必須把雙引號(hào)( “ ” )一刀劈開(kāi),即( “() ” ) ( “() ” ),每次只要半個(gè)( “ ” )。例子:public void insert(User user) String sqll=insert into +TABLENAME+ (+ User.UNAME+ ,+User.CLASSNMAE+ ,+User.GENDER+ ,+ User.REGDATE+ ,+User.DEMO+ ,+User.TAG+) values (+ user.getUname()+, +user.getClassname
7、()+ , + user.getGender()+ , +user.getRegDate()+ ,+ user.getDemo()+ ,+user.getTag()+ +); database.execSQL(sqll); 實(shí)例化內(nèi)部類(lèi):外部類(lèi).內(nèi)部類(lèi) 對(duì)象 = new 外部類(lèi)().new 內(nèi)部類(lèi)();例如:UserProvider.DB db=new UserProvider(this).new DB(this);SQLiteDatabase d=SQLiteDatabase.create(null);db.onCreate(d); /這個(gè)onCreate()方法是內(nèi)部類(lèi)DB的方法。 查看數(shù)
8、據(jù)庫(kù)內(nèi)的表:實(shí)例:public List findAllUser()List list = new ArrayList();Cursor cursor = database.query(TABLENAME, null, null , null, null, null, null);cursor.moveToFirst(); if(cursor.getPosition()!=cursor.getCount()-1)User user = new User();user.set_id(cursor.getString(0);user.setUname(cursor.getString(1);use
9、r.setClassname(cursor.getString(2);user.setGender(cursor.getString(3);user.setRegDate(cursor.getString(4);user.setDemo(cursor.getString(5);user.setTag(cursor.getString(6); list.add(user); cursor.moveToNext();cursor.close();database.close();return list; 增加INSERT表的操作:總結(jié): Cursor cursor;cursor 相當(dāng)于一個(gè)結(jié)果集,
10、要取出數(shù)據(jù)庫(kù)中表里的結(jié)果,Cursor.getString( int 第i列); 先從cursor中取出數(shù)據(jù),再用Bean 設(shè)置User.set列名(cursor.getString(i); i為表中的第i列 i是整數(shù)。要特別注意Cursor:使用cursor時(shí),一定要先將cursor.moveToFirst(); /將游標(biāo)移到第一行.當(dāng)再次使用時(shí)要cursor.moveToNext(); /將游標(biāo)移到第下一行.使用完畢后要關(guān)閉游標(biāo)和數(shù)據(jù)庫(kù).public view getView(int position, View convertView, ViewGroup parent) / Layou
11、tInflater的用法:LayoutInflater inflater = LayoutInflater.from(當(dāng)前class.this);LinearLayout linlayout = (LinearLayout) Inflater.inflate(R.layout.另一個(gè)布局xml,null);Button btnDel = (Button)linlayout.findViewById(R.id.btnDel);btnDel.setOnClickListener(new OnClickListener() public void onClick(View V) Provider p
12、 = new Provider() ; 處理數(shù)據(jù)的類(lèi)(增.刪.改.查): p.delete(user.get_id(); 調(diào)用這個(gè)類(lèi)里面的方法. freshData(); 調(diào)用自身 Toast.makeText().show; );Button btnUpdate = (Button)linlayout.findViewById(R.id.btnUpdate); /Intent可以把數(shù)據(jù)傳送到另一個(gè)頁(yè)面去:btnUpdate.setOnClickListener(new OnClickListener() public void onClick(View V) Toast.makeText(當(dāng)
13、前類(lèi).this, user.get_id()+”id is showing”,.).show(); Intent intent = new Intent(當(dāng)前類(lèi).this , 下一個(gè)類(lèi).class); intent.putExtras(“_id” , user.get_id(); 發(fā)送方 /以key, values 形式把數(shù)據(jù)傳送到另一個(gè)頁(yè)面 startActivity(intent); /另一個(gè)頁(yè)面接收的是: /String id = getIntent().getStringExtra(“_id”); 接收方 );TextView txtDemo = (TextView)linlayout
14、.findViewById(R.id.txtDemo);txtDemo.setText(user.getDemo();return linlayout; (1) /getView() 方法結(jié)束.public int getCount() (2) /getCount方法 List list = new ArrayList(); return list=null?null: list.size();public int getViewTypeCount() (3) /getViewTypeCount()方法 return 1;/getView() / getCount() / getViewTyp
15、eCount() 這三個(gè)方法必須實(shí)現(xiàn) List的用法:List list = new Arraylist(); /范型為user型的public list findAllUser() /返回LIST 列表list =provider(類(lèi)名).findAllUser(方法); /得到LIST 列表final User user = list.get (Positive); /得到用戶(hù)的所有信息.return list=null?0:list.size(); /判斷用戶(hù)信息是否為空.當(dāng)實(shí)現(xiàn) implements OnItemOnClickListener 這個(gè)接口時(shí):當(dāng)視圖中平行著有好多條數(shù)據(jù),點(diǎn)
16、擊其中一條數(shù)據(jù)時(shí),出現(xiàn)一個(gè)窗口,用OnItemOnClickListener 必須要實(shí)現(xiàn) public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) String id = (String)arg1.getTag(); arg1是View是視圖,可以獲取標(biāo)簽 Intent intent = new Intent(當(dāng)前.this , 下一頁(yè)面.class); intent.putExtra(“id” , id); / 以key,values的形式傳值i id. startActivity(intent);(下
17、面的實(shí)例展示如何創(chuàng)建一個(gè)使用自定義的 adapter 顯示天氣數(shù)據(jù)的ListView?;镜臍庀髷?shù)據(jù)存儲(chǔ)在哈希表中。在最高級(jí)別,Key是一個(gè)字符串,代表郵政編碼。此鍵(郵政編碼)Hashtable的值包含當(dāng)前的溫度,濕度和一個(gè)圖標(biāo),表示天氣狀況。這些都是字符串,以及。 ListView和適配器一起工作,以顯示各種郵政編碼這些天氣條件的清單。為了使這樣的天氣數(shù)據(jù),列表單元格渲染器使用TableLayout顯示這些天氣條件 - 每個(gè)單元由一個(gè)2行表:第一行有2個(gè)單元 - 圖標(biāo)和溫度,第二行有1單元 - 濕度。)這個(gè)實(shí)例太過(guò)于復(fù)雜不適合初學(xué)者,我這里使用高煥堂編寫(xiě)的應(yīng)用框架原理與程序開(kāi)發(fā)中的例子顯示
18、如何使用 ListView。本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:file:/H:/Android網(wǎng)頁(yè)(Spinner及ListView)/Android學(xué)習(xí)筆記%20-%20如何在程序中使用%20ListView%20-%20月光寶盒%20-%20CSDN博客.mht第一種方法:adapter=new ArrayAdapter(this,android.R.layout.simple_spinner_item, str); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); sp.se
19、tAdapter(adapter);默認(rèn)的:int j=str.length; for(int i=0;ij;i+) if(stri.equals(456) sp.setSelection(i); 第二種方法:sp.setAdapter(new SpinnerAdapter() /Override/public void unregisterDataSetObserver(DataSetObserver observer) / TODO Auto-generated method stub/Override/public void registerDataSetObserver(DataSet
20、Observer observer) / TODO Auto-generated method stub/Override/public boolean isEmpty() / TODO Auto-generated method stub/return false;/Override/public boolean hasStableIds() / TODO Auto-generated method stub/return false;/Override/public int getViewTypeCount() / TODO Auto-generated method stub/retur
21、n 0;/Override/public View getView(int position, View convertView, ViewGroup parent) /TextView tv=new TextView(MainActivity.this);/tv.setText(strposition);/return tv;/Override/public int getItemViewType(int position) / TODO Auto-generated method stub/return 0;/Override/public long getItemId(int position) / TODO Auto-generated method stub/return
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 社會(huì)醫(yī)學(xué)(雙語(yǔ))第二章 醫(yī)學(xué)模式
- 第五節(jié) 錯(cuò)覺(jué)課件
- 面向2024:歷史教案的新視野與新探索
- 2024年新能源汽車(chē)技術(shù)革新:電動(dòng)汽車(chē)發(fā)展趨勢(shì)分析
- 2024年狐假虎威課件資源大全
- 2024大班畢業(yè)典禮活動(dòng)方案(32篇)
- 2024年眼鏡設(shè)計(jì)教案:教學(xué)策略與成效
- 2024年春季教育展:《六國(guó)論》課件互動(dòng)體驗(yàn)
- 融合多媒體的2024《小學(xué)教育學(xué)》課件設(shè)計(jì)
- 第45屆世界技能大賽建筑金屬構(gòu)造項(xiàng)目全國(guó)選拔賽技術(shù)工作思路
- YY∕T 0314-2021 一次性使用人體靜脈血樣采集容器
- 第五章 種內(nèi)與種間關(guān)系
- 后進(jìn)生家長(zhǎng)會(huì)課件
- BEC口語(yǔ)Part-2-題集(整理自BEC口語(yǔ)書(shū))
- 8D培訓(xùn)課件(共43頁(yè)).ppt
- 如何正確理解五常政大論
- 第八講 地形圖應(yīng)用(二)
- 普鐵避雷器檢修作業(yè)指導(dǎo)書(shū)
- 下水管道施工合同通用版
- 鐵合金生產(chǎn)工藝
- 鋼結(jié)構(gòu)策劃書(shū)(范本)
評(píng)論
0/150
提交評(píng)論