欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二)

      時間:2019-05-12 21:03:41下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二)》。

      第一篇:黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二)

      帶你深入淺出python爬蟲框架scrapy(二)之前我們學(xué)習(xí)了scrapy的安裝,接下來我們先簡單的介紹一下使用。

      一、創(chuàng)建一個新的Scrapy項目

      scrapy startproject itcast 結(jié)構(gòu)如下

      │ scrapy.cfg │

      └─itcast │ items.py

      │ pipelines.py

      │ settings.py

      │ __init__.py

      └─spiders __init__.py

      這些文件主要是:

      ? ? ? ? ? ? scrapy.cfg: 項目配置文件

      itcast/: 項目python模塊, 呆會代碼將從這里導(dǎo)入 itcast/items.py: 項目items文件 itcast/pipelines.py: 項目管道文件 itcast/settings.py: 項目配置文件 itcast/spiders: 放置spider的目錄

      二、定義提取的Item 它通過創(chuàng)建一個scrapy.item.Item類來聲明,定義它的屬性為scrpy.item.Field對象,就像是一個對象關(guān)系映射(ORM).我們通過將需要的item模型化,來控制從dmoz.org獲得的站點(diǎn)數(shù)據(jù),比如我們要獲得站點(diǎn)的名字,url和網(wǎng)站描述,我們定義這三種屬性的域。要做到這點(diǎn),我們編輯在itcast目錄下的items.py文件,我們的Item類將會是這樣

      from scrapy.item import Item, Field class DmozItem(Item): title = Field()link = Field()desc = Field()

      三、寫一個Spider用來爬行站點(diǎn),并提取Items

      Spider是用戶編寫的類,用于從一個域(或域組)中抓取信息。

      他們定義了用于下載的URL的初步列表,如何跟蹤鏈接,以及如何來解析這些網(wǎng)頁的內(nèi)容用于提取items。要建立一個Spider,你必須為scrapy.spider.BaseSpider創(chuàng)建一個子類,并確定三個主要的、強(qiáng)制的屬性:

      ? ? name:爬蟲的識別名,它必須是唯一的,在不同的爬蟲中你必須定義不同的名字.start_urls:爬蟲開始爬的一個URL列表。爬蟲從這里開始抓取數(shù)據(jù),所以,第一次下載的數(shù)據(jù)將會從這些URLS開始。其他子URL將會從這些起始URL中繼承性生成。

      ? parse():爬蟲的方法,調(diào)用時候傳入從每一個URL傳回的Response對象作為參數(shù),response將會是parse方法的唯一的一個參數(shù), 這個方法負(fù)責(zé)解析返回的數(shù)據(jù)、匹配抓取的數(shù)據(jù)(解析為item)并跟蹤更多的URL。from scrapy.spider import BaseSpider

      class DmozSpider(BaseSpider): name = “dmoz”

      allowed_domains = [“dmoz.org”] start_urls = [ “http://#topics-selectors 這是一些XPath表達(dá)式的例子和他們的含義

      ? ? ? ? /html/head/title: 選擇HTML文檔元素下面的標(biāo)簽。/html/head/title/text(): 選擇前面提到的<title>元素下面的文本內(nèi)容 //td: 選擇所有<td>元素</p><p>//div[@class=”mine“]: 選擇所有包含 class=”mine“ 屬性的div 標(biāo)簽元素</p><p>這只是幾個使用XPath的簡單例子,但是實際上XPath非常強(qiáng)大。</p><p>為了方便使用XPaths,Scrapy提供XPathSelector 類,有兩種口味可以選擇,HtmlXPathSelector(HTML數(shù)據(jù)解析)和XmlXPathSelector(XML數(shù)據(jù)解析)。為了使用他們你必須通過一個 Response 對象</p><p>對他們進(jìn)行實例化操作。你會發(fā)現(xiàn)Selector對象展示了文檔的節(jié)點(diǎn)結(jié)構(gòu)。因此,第一個實例化的selector必與根節(jié)點(diǎn)或者是整個目錄有關(guān)。Selectors 有三種方法</p><p>? ? ? path():返回selectors列表, 每一個select表示一個xpath參數(shù)表達(dá)式選擇的節(jié)點(diǎn).extract():返回一個unicode字符串,該字符串為XPath選擇器返回的數(shù)據(jù) re():返回unicode字符串列表,字符串作為參數(shù)由正則表達(dá)式提取出來</p><p>現(xiàn)在我們嘗試從網(wǎng)頁中提取數(shù)據(jù)</p><p>from scrapy.spider import BaseSpider from scrapy.selector import HtmlXPathSelector</p><p>class DmozSpider(BaseSpider): name = ”dmoz“</p><p>allowed_domains = [”dmoz.org“] start_urls = [ ”http://XPathSelector(response)sites = hxs.path('//fieldset/ul/li')#sites = hxs.path('//ul/li')for site in sites: title = site.path('a/text()').extract()link = site.path('a/@href').extract()desc = site.path('text()').extract()#print title, link, desc print title, link</p><p>保存抓取的數(shù)據(jù)</p><p>保存信息的最簡單的方法是通過以下命令來保存數(shù)據(jù): scrapy crawl dmoz-o items.json-t json 簡單的使用就介紹這了,后面會繼續(xù)為大家說明高級用法。</p><h2><a name="2" >第二篇:黑馬程序員c語言教程:Oracle簡介</a></h2><p>9.通過子查詢建表 通過子查詢建表的例子</p><p>SQL>CREATE TABLE emp_41 AS SELECT id, last_name, userid, start_date FROM s_emp WHERE dept_id = 41;SQL> CREATE TABLE A as select * from B where 1=2;只要表的結(jié)構(gòu).10.用子查詢建表的注意事項</p><p>可以關(guān)連多個表及用集合函數(shù)生成新表,注意選擇出來的字段必須有合法的字段名稱,且不能重復(fù)。</p><p>用子查詢方式建立的表,只有非空NOT NULL的約束條件能繼承過來, 其它的約束條件和默認(rèn)值都沒有繼承過來.根據(jù)需要,可以用alter table add constraint ……再建立其它的約束條件,如primary key等.11.Foreign Key的可選參數(shù)ON DELETE CASCADE 在創(chuàng)建Foreign Key時可以加可選參數(shù): ON DELETE CASCADE它的含義是如果刪除外鍵主表里的內(nèi)容,子表里相關(guān)的內(nèi)容將一起被刪除.如果沒有ON DELETE CASCADE參數(shù),子表里有內(nèi)容,父表里的主關(guān)鍵字記錄不能被刪除掉.12.如果數(shù)據(jù)庫表里有不滿足的記錄存在,建立約束條件將不會成功.13.給表創(chuàng)建和刪除同義詞的例子 SQL> CREATE SYNONYM d_sum 2 FOR dept_sum_vu;SQL> CREATE PUBLIC SYNONYM s_dept 2 FOR alice.s_dept;SQL> DROP SYNONYM s_dept;</p><p>十、ORACLE里的數(shù)據(jù)字典</p><p>1.什么是數(shù)據(jù)字典?ORACLE的數(shù)據(jù)字典是數(shù)據(jù)庫的重要組成部分之一,它隨著數(shù)據(jù)庫 的產(chǎn)生而產(chǎn)生, 隨著數(shù)據(jù)庫的變化而變化, 體現(xiàn)為sys用戶下所有的一些表和視圖.2.數(shù)據(jù)字典里存了以下內(nèi)容: 用戶信息</p><p>用戶的權(quán)限信息</p><p>所有數(shù)據(jù)對象信息表的約束條件統(tǒng)計分析數(shù)據(jù)庫的視圖等 不能手工修改數(shù)據(jù)字典里的信息.16</p><p>J2EE @ zxw 3.常用的數(shù)據(jù)字典</p><p>Dictionary 存放所有數(shù)據(jù)表,視圖,同義詞名稱和解釋 Dict_columns 數(shù)據(jù)字典里字段名稱的和解釋 Dba_users 用戶 Dba_tablespaces 表空間</p><p>Dba_data_files 數(shù)據(jù)庫的文件 Dba_free_space 空閑表空間 Dba_rollback_segs 回滾段</p><p>User_objects 數(shù)據(jù)對象 User_constraints 約束條件 User_sequences 序列號 User_views 視圖 User_indexes 索引 User_synonyms 同義詞</p><p>Session_roles 用戶的角色 User_role_privs 用戶的角色權(quán)限 User_sys_privs 用戶的系統(tǒng)權(quán)限 User_tab_privs 用戶的表級權(quán)限 V$session 實時用戶情況 V$sysstat 實時系統(tǒng)統(tǒng)計 V$sesstat 實時用戶統(tǒng)計 V$sgastat 實時SGA使用 V$locked_object 實時鎖 V$controlfile 控制文件 V$logfile 日志文件 V$parameter 參數(shù)文件 4.數(shù)據(jù)字典的分類 數(shù)據(jù)字典四大類別</p><p>User_ 用戶下所有數(shù)據(jù)庫對象</p><p>All_ 用戶權(quán)限范圍內(nèi)所有的數(shù)據(jù)庫對象 Dba_ 所有的數(shù)據(jù)庫對象</p><p>V$Content$nbsp;統(tǒng)計分析數(shù)據(jù)庫的視圖 賦于oem_monitor權(quán)限非DBA用戶也可查詢V$*視圖</p><p>5.查詢數(shù)據(jù)字典</p><p>SQL> select * from dictionary where instr(comments,'index')>0;SQL> select constraint_name, constraint_type, 2 search_condition, r_constraint_name 3 from user_constraints 4 where table_name = ‘&table_name';十一.控制數(shù)據(jù)、INSERT(往數(shù)據(jù)表里插入記錄的語句)SQL> insert into 表名(字段名1, 字段名2, ……)values(值1, 值2, ……);SQL> insert into 表名(字段名1, 字段名2, ……)select(字段名1, 字段名2, ……)from 另外的表名 where 條件;可以用&標(biāo)記變量的方法多次輸入記錄</p><p>快速插入數(shù)據(jù)的方法, 一般用于大于128M的數(shù)據(jù)轉(zhuǎn)移 SQL> insert /*+ append */ into 表名</p><p>select * from 另外的用戶名.另外的表名 WHERE 條件;SQL> commit;注意事項:</p><p>用INSERT /*+ APPEND */ 的方法會對target_tablename產(chǎn)生級別為6的獨(dú)占鎖,如果運(yùn)行此命令時還有對target_tablename的DML操作會排隊在它后面, 對OLTP系統(tǒng)在用的表操作是不合適的。17</p><p>J2EE @ zxw 2.插入字符串類型的字段的注意事項: 字符串類型的字段值必須用單引號括起來, 例如: ’GOOD DAY’</p><p>如果字段值里包含單引號’ 需要進(jìn)行字符串轉(zhuǎn)換, 我們把它替換成兩個 單引號’ ’</p><p>字符串類型的字段值超過定義的長度會出錯, 最好在插入前進(jìn)行長度校驗 ‘’ 標(biāo)記是NULL, user 標(biāo)明當(dāng)前用戶</p><p>日期字段的字段值可以用當(dāng)前數(shù)據(jù)庫的系統(tǒng)時間SYSDATE, 精確到秒</p><p>用字符串轉(zhuǎn)換成日期型函數(shù)TO_DATE(‘2001-08-01’,’YYYY-MM-DD’)TO_DATE()還有很多種日期格式, 可以參看ORACLE DOC.年-月-日 小時:分鐘:秒 的格式Y(jié)YYY-MM-DD HH24:MI:SS NSERT時最大可操作的字符串長度小于等于4000個單字節(jié), 如果要插入更長的字符串, 請考慮字段用CLOB類型, 方法借用ORACLE里自帶的DBMS_LOB程序包.3、UPDATE(修改數(shù)據(jù)表里記錄的語句)SQL> UPDATE 表名 SET 字段名1=值1, 字段名2=值2, …… WHERE 條件;如果修改的值N沒有賦值或定義時, 將把原來的記錄內(nèi)容清為NULL, 最好在修改前進(jìn)行非空校驗;值N超過定義的長度會出錯, 最好在插入前進(jìn)行長度校驗.新功能,可以修改子查詢后的結(jié)果集</p><p>例子:SQL> update(select * from s_dept)set id=50 where id=60;</p><p>4、DELETE(刪除數(shù)據(jù)表里記錄的語句)SQL> DELETE FROM 表名 WHERE 條件;注意:刪除記錄并不能釋放ORACLE里被占用的數(shù)據(jù)塊表空間.它只把那些 被刪除的數(shù)據(jù)塊標(biāo)成unused.如果確實要刪除一個大表里的全部記錄, 可以用 TRUNCATE 命令, 它可以釋放占用的數(shù)據(jù)塊表空間</p><p>SQL> TRUNCATE TABLE 表名;此操作不可回退.5、SQL語句的分類 數(shù)據(jù)定義語言(DDL):create、alter、drop(創(chuàng)建、修改結(jié)構(gòu)、刪除)(其他:rename)數(shù)據(jù)操縱語言(DML):insert、delete、select、update(增、刪、查、改)(其他:truncate)</p><p>數(shù)據(jù)控制語言(DCL):grant、revoke(授權(quán)、回收)、set role 事務(wù)控制:commit、rollback、savepoint(其他:lock table、set constraint、set transaction)</p><p>審計控制:audit、noaudit 系統(tǒng)控制:alter system 會話控制:alter session 其他語句:comment(添加注釋)、explain plan、analyze、validate、call</p><p>6、ORACLE里事務(wù)控制 Commit 提交事務(wù) Rollback 回退事務(wù)</p><p>Savepoint 設(shè)置斷點(diǎn), 在事務(wù)中標(biāo)記位置, 事務(wù)結(jié)束, 斷點(diǎn)釋放</p><p>事務(wù)結(jié)束的情況遇到commit或者rollback遇到DDL和DCL語句發(fā)現(xiàn)錯誤,如死鎖用戶退出</p><p>SQL*PLUS系統(tǒng)重啟或崩潰 7.DML操作的注意事項 18</p><p>J2EE @ zxw 以上SQL語句對表都加上了行級鎖, 確認(rèn)完成后, 必須加上事物處理結(jié)束的命令COMMIT 才能正式生效, 否則改變不一定寫入數(shù)據(jù)庫里.行級鎖也未能得到釋放.如果想撤回這些操作, 可以用命令 ROLLBACK 復(fù)原.在運(yùn)行INSERT, DELETE 和 UPDATE 語句前最好估算一下可能操作的記錄范圍, 應(yīng)該把它限定在較小(一萬條記錄)范圍內(nèi),.否則ORACLE處理這個事物用到很大的回退段.程序響應(yīng)慢甚至失去響應(yīng).如果記錄數(shù)上十萬以上這些操作, 可以把這些SQL語句分段分次完成, 其間加上COMMIT 確認(rèn)事物處理.太過頻繁的commit不好</p><h2><a name="3" >第三篇:黑馬程序員c語言教程:DML語言強(qiáng)化</a></h2><p>sql語言的類型</p><p>數(shù)據(jù)語言實現(xiàn)數(shù)據(jù)的crud</p><p>DML語句(Data Manipulation Language)數(shù)據(jù)庫操作語言</p><p>insert update delete select DDL語言 data definition Lanaguage</p><p>create table</p><p>create view index sequence synonym同義詞</p><p>truncate table DCL語言 data control language數(shù)據(jù)語言</p><p>commit rollback savetpointe</p><p>OCA認(rèn)證 OCP(dba)一起考, 參加oracle的培訓(xùn) 2w Oracle數(shù)據(jù)庫管理員認(rèn)證專員(OCA):Oracle Certified Associate Oracle數(shù)據(jù)庫管理員認(rèn)證專家(OCP): Oracle Certified Professional Oracle數(shù)據(jù)庫管理員認(rèn)證大師(OCM): Oracle Certified Master</p><p>語法: INSERT INTO table [(column [, column...])] VALUES(value [, value...]);</p><p>--1 向表中插入所有列</p><p>insert into emp values(1, 'tom_111', 'enginerr', 7839, sysdate, 5000, 100, 10)--2 向表中插入部分列</p><p>insert into emp(empno, ename, job, hiredate)values(2, 'tom_2222', 'enginerr', sysdate)</p><p>--3 隱式插入空值: 沒有寫出的列,默認(rèn)為null值--4 顯示插入空值:--5 sql插入語言的地址符 & 取地址符后面相當(dāng)于一個變量</p><p>mysql語言: preparedStatement語言 SQL> insert into emp(empno, ename, job, hiredate)values(&empno, &ename, &job, &hiredate);輸入 empno 的值: 3</p><p>輸入 ename 的值: 'tom_ccc' 輸入 job 的值: 'job' 輸入 hiredate 的值: '22-2月-81' 原值 1: insert into emp(empno, ename, job, hiredate)values(&empno, &ename, &job, &hiredate)新值 1: insert into emp(empno, ename, job, hiredate)values(3, 'tom_ccc', 'job', '22-2月-81')</p><p>&地址符, 可以在任何sql語言中使用.在select 語言中也可以使用地址符</p><p>SQL> select ename, job, &tt from emp;輸入 tt 的值: deptno 原值 1: select ename, job, &tt from emp 新值 1: select ename, job, deptno from emp</p><p>--7 批量插入數(shù)據(jù)--創(chuàng)建一張表</p><p>create table emp10 as</p><p>select * from emp where 1=2;--一次性的將emp中所有10號部門的員工插入到emp10中</p><p>--在insert語言中使用子查詢 子查詢 不光用在查詢套查詢, 也可用在DML語句套select語句</p><p>insert into emp10--列完全一樣,可以不寫</p><p>select * from emp where deptno=10;delete from emp10;</p><p>有關(guān)update更新語句</p><p>UPDATE table SET column = value [, column = value,...] [WHERE condition];--列子</p><p>SQL> update emp10 set sal=2300 where empno=7934;</p><p>有關(guān)刪除數(shù)據(jù)</p><p>DELETE [FROM] table [WHERE condition];</p><p>delete和truncate表區(qū)別</p><p>delete逐條刪除 truncate先摧毀表再重建delete語言是DML語言 truncate是DDL</p><p>DML語言可以閃回 做錯的并且提交了.可通過閃回,撤銷操作</p><p>DDL語言不可以閃回 flashback</p><p>delete是逐條刪除,會產(chǎn)生碎片, truncate不會產(chǎn)生碎片</p><p>行移動功能: 要開啟閃回功能,必須要開啟行移動功能delete不會釋放空間 truncate會delete可以回滾 truncate不可以</p><p>oracle delete快 mysql truncate快.實驗: 從文件中導(dǎo)入數(shù)據(jù), 通過命名delete 和 truncate刪除表數(shù)據(jù) 實驗</p><p>從文件中導(dǎo)入數(shù)據(jù)</p><p>SQL> set timing off;SQL> set feedback off;SQL> drop table testdelete purge;SQL> @c:Sql.sql;SQL> SQL> set timing on;//最后刪除數(shù)據(jù)表的時候,把時間打開,記錄時間</p><p>SQL> delete from testdelete;已用時間: 00: 00: 00.03</p><p>從文件中導(dǎo)入數(shù)據(jù)</p><p>SQL> set timing off;@c:Sql.sql;</p><p>set timing off;</p><p>select count(*)from testdelete;set timing on;//最后刪除數(shù)據(jù)表的時候,把時間打開,記錄時間</p><p>truncate table testdelete;已用時間: 00: 00: 00.39</p><p>事務(wù)基本概念</p><p>概念</p><p>一個或者多個DML語言組成特點(diǎn)</p><p>要么都成功,要么都失敗</p><p>特性</p><p>原子性 一致性 隔離性 持久性</p><p>事物的隔離性 多個客戶端同時操作數(shù)據(jù)庫的時, 要隔離他們的操作</p><p>否則:臟讀 不可重復(fù)讀 幻讀</p><p>設(shè)置不同的擱置級別來解決oracle中的事務(wù)</p><p>事務(wù)起始標(biāo)志 DML語言(oracle默認(rèn)事務(wù)似是打開的)2 事務(wù)的結(jié)束標(biāo)志</p><p>提交: 顯示提交commit</p><p>隱式提交</p><p>1)執(zhí)行DDL語言</p><p>eg create table語言 還有I個隱式的功能</p><p>提交之前的沒有提交的DML語言(insert update)</p><p>2)正常退出</p><p>回滾: 顯示 rollback</p><p>隱式 掉電/宕機(jī)/非正常退出==系統(tǒng)出錯了 oracle事務(wù)控制--保存點(diǎn)</p><p>create table testsavepoint(tid number, tname varchar2(20));set feedback on</p><p>insert into testsavepoint values(1, 'tom1');insert into testsavepoint values(2, 'tom2');savepoint a;//創(chuàng)建一個保存點(diǎn)</p><p>insert into testsavepoint values(3, 'tom3a);rollback to savepoint a;</p><p>注意: 回退到savepoint a 前面插入的兩條sql語句還沒有提交;仍然還在一個事務(wù)里面;讓事務(wù)結(jié)束的方法 顯示 隱式 SQL> rollback / commit oracle數(shù)據(jù)的隔離級別問題</p><p>read only ,數(shù)據(jù)庫幾乎不做串行化操作,增加了read only SQL99</p><h2><a name="4" >第四篇:黑馬程序員c語言教程:Oracle概念(推薦)</a></h2><p>七、在執(zhí)行SQL語句時綁定變量</p><p>1.接收和定義變量的SQL*PLUS命令 ACCEPT DEFINE UNDEFINE & 2.綁定變量SQL語句的例子(1)SQL> select id, last_name, salary from s_emp where dept_id = &department_number;Enter value for department_number: 10 old 1: select id, last_name, salary from s_emp where dept_id=&department_number;new 1: select id, last_name, salary from s_emp where dept_id= 10 SQL> SET VERIFY OFF | ON;可以關(guān)閉和打開提示確認(rèn)信息old 1和new 1的顯示.3.綁定變量SQL語句的例子(2)SQL> select id, last_name, salary from s_emp where title = '&job_title';Enter value for job_title: Stock Clerk 11</p><p>J2EE @ zxw SQL> select id, last_name, salary from s_emp where hiredate >to_date('&start_hire_date','YYYY-MM-DD');Enter value for start_hire_date : 2001-01-01 把綁定字符串和日期類型變量時,變量外面要加單引號 也可綁定變量來查詢不同的字段名 輸入變量值的時候不要加;等其它符號 4.ACCEPT的語法和例子</p><p>SQL> ACCEPT variable [datatype] [FORMAT] [PROMPT text] [HIDE] 說明: variable 指變量名 datatype 指變量類型,如number,char等 format 指變量顯示格</p><p>式 prompt text 可自定義彈出提示符的內(nèi)容text hide 隱藏用戶的輸入符號 使用ACCEPT的例子:</p><p>ACCEPT p_dname PROMPT 'Provide the department name: ' ACCEPT p_salary NUMBER PROMPT 'Salary amount: ' ACCEPT pswd CHAR PROMPT 'Password: ' HIDE ACCEPT low_date date format 'YYYY-MM-DD' PROMPT“Enter the low date range('YYYY-MM-DD'):” 4.DEFINE的語法和例子</p><p>SQL> DEFINE variable = value 說明: variable 指變量名 value 指變量值</p><p>定義好了變良值后, 執(zhí)行綁定變量的SQL語句時不再提示輸入變量</p><p>使用DEFINE的例子:</p><p>SQL> DEFINE dname = sales SQL> DEFINE dname DEFINE dname = “sales”(CHAR)SQL> select name from dept where lower(name)='&dname';NAME-------------------------sales sales SQL> UNDEFINE dname SQL> DEFINE dname Symbol dname is UNDEFINED 5.SQL*PLUS里傳遞參數(shù)到保存好的*.sql文件里 SQL> @ /路徑名/文件名 參數(shù)名1[,參數(shù)名2, ?.] SQL> start /路徑名/文件名 參數(shù)名1[,參數(shù)名2, ?.] 注意事項: 一次最多只能獲取9個&變量, 變量名稱只能是從&1,&2到&9 變量名后不要加特殊的結(jié)束符號</p><p>如果在SQL*PLUS里要把&符號保存在ORACLE數(shù)據(jù)庫里,要修改sql*plus環(huán)境變量define SQL> set define off;</p><p>八、概述數(shù)據(jù)模型和數(shù)據(jù)庫設(shè)計 1.系統(tǒng)開發(fā)的階段: Strategy and Analysis Design Build and Document Transition Production 12</p><p>J2EE @ zxw 2.數(shù)據(jù)模型</p><p>Model of system in client's mind Entity model of client's model Table model of entity model Tables on disk 3.實體關(guān)系模型(ERM)概念</p><p>ERM(entity relationship modeling)實體 存有特定信息的目標(biāo)和事件 例如: 客戶,訂單等 屬性 描述實體的屬性 例如: 姓名,電話號碼等 關(guān)系 兩個實體間的關(guān)系 例如:訂單和產(chǎn)品等 實體關(guān)系模型圖表里的約定</p><p>Dashed line(虛線)可選參數(shù) “may be”</p><p>Solid line(實線)必選參數(shù) “must be”</p><p>Crow's foot(多線)程度參數(shù) “one or more”</p><p>Single line(單線)程度參數(shù) “one and only one” 4.實體關(guān)系模型例子</p><p>每個訂單都必須有一個或幾個客戶</p><p>每個客戶可能是一個或幾個訂單的申請者 5.實體關(guān)系的類型</p><p>1:1 一對一 例如: 的士和司機(jī) M:1 多對一 例如: 乘客和飛機(jī) 1:M 一對多 例如: 員工和技能 6.校正實體關(guān)系的原則</p><p>屬性是單一值的, 不會有重復(fù)</p><p>屬性必須依存于實體, 要有唯一標(biāo)記</p><p>沒有非唯一屬性依賴于另一個非唯一的屬性 7.定義結(jié)構(gòu)時的注意事項 減少數(shù)據(jù)冗余</p><p>減少完整性約束產(chǎn)生的問題 確認(rèn)省略的實體,關(guān)系和屬性 8.完整性約束的要求</p><p>Primary key 主關(guān)鍵字 唯一非NULL Foreign key 外鍵 依賴于另一個Primary key,可能為NULL Column 字段名 符合定義的類型和長度</p><p>Constraint 約束條件 用戶自定義的約束條件,要符合工作流要求 例如: 一個銷售人員的提成不能超過它的基本工資</p><p>Candidate key 候選主關(guān)鍵字 多個字段名可組成候選主關(guān)鍵字, 其組合是唯一和非NULL的</p><p>9.把實體關(guān)系圖映射到關(guān)系數(shù)據(jù)庫對象的方法 把簡單實體映射到數(shù)據(jù)庫里的表</p><p>把屬性映射到數(shù)據(jù)庫里的表的字段, 標(biāo)明類型和注釋 把唯一標(biāo)記映射到數(shù)據(jù)庫里的唯一關(guān)鍵字 把實體間的關(guān)系映射到數(shù)據(jù)庫里的外鍵 13</p><p>J2EE @ zxw 其它的考慮: 設(shè)計索引,使查詢更快</p><p>建立視圖,使信息有不同的呈現(xiàn)面, 減少復(fù)雜的SQL語句 計劃存儲空間的分配 重新定義完整性約束條件</p><p>10.實體關(guān)系圖里符號的含義 PK 唯一關(guān)鍵字的字段 FK 外鍵的字段</p><p>FK1,FK2 同一個表的兩個不同的外鍵</p><p>FK1,FK1 兩個字段共同組成一個外鍵 NN 非null字段 U 唯一字段</p><p>U1,U1 兩個字段共同組成一個唯一字段</p><p>九、創(chuàng)建表</p><p>1.ORACLE常用的字段類型 ORACLE常用的字段類型有</p><p>VARCHAR2(size)可變長度的字符串, 必須規(guī)定長度 CHAR(size)固定長度的字符串, 不規(guī)定長度默認(rèn)值為1</p><p>NUMBER(p,s)數(shù)字型p是位數(shù)總長度, s是小數(shù)的長度, 可存負(fù)數(shù) 最長38位.不夠位時會四舍五入.DATE 日期和時間類型</p><p>LOB 超長字符, 最大可達(dá)4G CLOB 超長文本字符串 BLOB 超長二進(jìn)制字符串</p><p>BFILE 超長二進(jìn)制字符串, 保存在數(shù)據(jù)庫外的文件里是只讀的.數(shù)字字段類型位數(shù)及其四舍五入的結(jié)果 原始數(shù)值1234567.89 數(shù)字字段類型位數(shù) 存儲的值 Number 1234567.89 Number 12345678 Number 錯</p><p>Number(9,1)1234567.9 Number(9,3)錯 Number(7,2)錯</p><p>Number(5,-2)1234600 Number(5,-4)1230000 Number(*,1)1234567.9 2.創(chuàng)建表時給字段加默認(rèn)值 和約束條件 創(chuàng)建表時可以給字段加上默認(rèn)值</p><p>例如 : 日期字段 DEFAULT SYSDATE 這樣每次插入和修改時, 不用程序操作這個字段都能得到動作的時間 14</p><p>J2EE @ zxw 創(chuàng)建表時可以給字段加上約束條件 例如: 非空 NOT NULL 不允許重復(fù) UNIQUE 關(guān)鍵字 PRIMARY KEY 按條件檢查 CHECK(條件)外鍵 REFERENCES 表名(字段名)3.創(chuàng)建表的例子</p><p>CREATE TABLE DEPT(EPTNO NUMBER(2)CONSTRAINT PK_DEPT PRIMARY KEY, DNAME VARCHAR2(14), LOC VARCHAR2(13));CREATE TABLE region(ID number(2)NOT NULL PRIMARY KEY, postcode number default '0' NOT NULL, areaname varchar2(30)default ' ' NOT NULL);4.創(chuàng)建表時的命名規(guī)則和注意事項</p><p>表名和字段名的命名規(guī)則:必須以字母開頭,可以含符號A-Z,a-z,0-9,_,$,# 大小寫不區(qū)分</p><p>不用SQL里的保留字, 一定要用時可用雙引號把字符串括起來. 用和實體或?qū)傩韵嚓P(guān)的英文符號長度有一定的限制 注意事項: 建表時可以用中文的字段名, 但最好還是用英文的字段名</p><p>創(chuàng)建表時要把較小的不為空的字段放在前面, 可能為空的字段放在后面 建表時如果有唯一關(guān)鍵字或者唯一的約束條件,建表時自動建了索引 一個表的最多字段個數(shù)也是有限制的,254個.5.約束名的命名規(guī)則和語法</p><p>約束名的命名規(guī)則約束名如果在建表的時候沒有指明,系統(tǒng)命名規(guī)則是SYS_Cn(n是數(shù)字)約束名字符串的命名規(guī)則同于表和字段名的命名規(guī)則 6.使用約束時的注意事項</p><p>約束里不能用系統(tǒng)函數(shù),如SYSDATE和別的表的字段比較 可以用本表內(nèi)字段的比較</p><p>想在事務(wù)處理后, 做約束的檢查</p><p>SQL> alter session set constraints deferred.7.由實體關(guān)系圖到創(chuàng)建表的例子 s_dept 前提條件:已有region表且含唯一關(guān)鍵字的字段id SQL> CREATE TABLE s_dept(id NUMBER(7)CONSTRAINT s_dept_id_pk PRIMARY KEY, name VARCHAR2(25)CONSTRAINT s_dept_name_nn NOT NULL, region_id NUMBER(7)CONSTRAINT s_dept_region_id_fk REFERENCES region(id), CONSTRAINT s_dept_name_region_id_uk UNIQUE(name, region_id));8.較復(fù)雜的創(chuàng)建表例子 15</p><p>J2EE @ zxw SQL> CREATE TABLE s_emp(id NUMBER(7)CONSTRAINT s_emp_id_pk PRIMARY KEY, last_name VARCHAR2(25)CONSTRAINT s_emp_last_name_nn NOT NULL,first_name VARCHAR2(25), userid VARCHAR2 CONSTRAINT s_emp_userid_nn NOT NULL CONSTRAINT s_emp_userid_uk UNIQUE, start_date DATE DEFAULT SYSDATE, comments VARCHAR2(25), manager_id NUMBER(7), title VARCHAR2(25), dept_id NUMBER(7)CONSTRAINT s_emp_dept_id_fk REFERENCES s_dept(id), salary NUMBER(11,2), commission_pct NUMBER(4,2)CONSTRAINT s_emp_commission_pct_ck CHECK(commission_pct IN(10,12.5,15,17.5,20)));</p><h2><a name="5" >第五篇:黑馬程序員c語言教程:多表查詢</a></h2><p>笛卡爾積</p><p>部門表</p><p>笛卡爾積產(chǎn)生結(jié)果: 行數(shù) 兩個表相乘</p><p>列數(shù): 行數(shù)相加 原因</p><p>條件等值連接</p><p>select ****</p><p>from tab1, tab2</p><p>where tab1.a = tab2.a</p><p>select count(e.ename)</p><p>from emp e, dept d</p><p>3* where e.deptno = d.deptno</p><p>SQL> /</p><p>COUNT(E.ENAME)</p><p>--------------</p><p>多表查詢關(guān)鍵點(diǎn):</p><p>等值連接 eg:查詢員工信息,員工號,姓名,月薪,部門名稱</p><p>select e.empno, e.ename, e.sal, d.dname</p><p>from emp e, dept d</p><p>3* where e.deptno = d.deptno</p><p>SQL> /</p><p>EMPNO ENAME SAL DNAME</p><p>--------------------------------------------</p><p>7369 SMITH 800 RESEARCH</p><p>7499 ALLEN 1600 SALES</p><p>7521 WARD 1250 SALES</p><p>7566 JONES 2975 RESEARCH</p><p>7654 MARTIN 1250 SALES</p><p>7698 BLAKE 2850 SALES</p><p>7782 CLARK 2450 ACCOUNTING</p><p>7788 SCOTT 3000 RESEARCH</p><p>7839 KING 5000 ACCOUNTING</p><p>7844 TURNER 1500 SALES</p><p>7876 ADAMS 1100 RESEARCH</p><p>7900 JAMES 950 SALES</p><p>7902 FORD 3000 RESEARCH</p><p>7934 MILLER 1300 ACCOUNTING</p><p>已選擇14行。</p><p>不等值連接: eg:查詢員工信息,員工號,姓名,月薪, 薪水級別</p><p>select e.empno, e.ename, e.sal, s.grade from emp e, salgrade s where e.sal >= s.losal and e.sal <=s.hisal</p><p>select e.empno, e.ename, e.sal, s.grade from emp e, salgrade s where e.sal between s.losal and s.hisal</p><p>外連接 eg:按部門統(tǒng)計員工人數(shù): 部門號 部門名稱 各部門人數(shù)</p><p>分析1: 10 20 30 ====> 分組</p><p>分析2: 因為各部門人數(shù) 是在員工表中..多表查詢</p><p>步驟1</p><p>select d.deptno, d.dname, count(e.empno)</p><p>from dept d, emp e</p><p>where d.deptno = e.deptno</p><p>group by d.deptno, d.dname</p><p>DEPTNO DNAME COUNT(E.EMPNO)</p><p>-------------------------------------</p><p>ACCOUNTING 3</p><p>RESEARCH 5</p><p>SALES 6</p><p>步驟2 外連接....分析:為什么40號部門沒有統(tǒng)計出來</p><p>原因: 因員工表里面 沒有40號部門的員工(現(xiàn)象)</p><p>where d.deptno = e.deptno(sql)問題的本質(zhì)</p><p>40 =====>期望: 在連接條件不成立的條件下,也要把部門編號40 給顯示出來....外連接...select d.deptno, d.dname, count(e.empno)</p><p>from dept d, emp e</p><p>where d.deptno = e.deptno(+)</p><p>group by d.deptno, d.dname</p><p>左外連接:(+)寫在=號的右邊</p><p>自連接:--查詢員工信息 ,老板信息</p><p>顯示: ****的老板是**** 自連接: 把一張表看成兩張表,自連接</p><p>--員工表的老板 是 老板表的員工</p><p>select e.ename, b.ename</p><p>from emp e, emp b</p><p>where e.mgr = b.empno</p><p>select e.ename|| '的老板是' || b.ename</p><p>from emp e, emp b</p><p>where e.mgr = b.empno</p><p>====> 需求 把員工表的每一條記錄都顯示出來</p><p>select e.ename|| '的老板是' || b.ename</p><p>from emp e, emp b</p><p>where e.mgr = b.empno(+)</p><p>select e.ename|| '的老板是' || nvl(b.ename, '他自己')</p><p>from emp e, emp b</p><p>where e.mgr = b.empno(+)</p><p>SMITH的老板是FORD</p><p>MPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO----------------------------------------------------------------------------7369 SMITH CLERK 7902 17-12月-80 800 20 7499 ALLEN SALESMAN 7698 20-2月-81 1600 300 30 7521 WARD SALESMAN 7698 22-2月-81 1250 500 30 7566 JONES MANAGER 7839 02-4月-81 2975 20 7654 MARTIN SALESMAN 7698 28-9月-81 1250 1400 30 7698 BLAKE MANAGER 7839 01-5月-81 2850 30 7782 CLARK MANAGER 7839 09-6月-81 2450 10 7788 SCOTT ANALYST 7566 19-4月-87 3000 20 7839 KING PRESIDENT 17-11月-81 5000 10 7844 TURNER SALESMAN 7698 08-9月-81 1500 0 30 7876 ADAMS CLERK 7788 23-5月-87 1100 20 7900 JAMES CLERK 7698 03-12月-81 950 30 7902 FORD ANALYST 7566 03-12月-81 3000 20 7934 MILLER CLERK 7782 23-1月-82 1300 10</p><p>14行。</p> </div> </article> <a href="#" tpid="25" target="_self" class="download_card jhcdown" rel="nofollow"> <img class="download_card_pic" src="http://static.xiexiebang.com/skin/default/images/icon_word.png" alt="下載黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二)word格式文檔"> <div id="lcy9sud" class="download_card_msg"> <div id="g2cprel" class="download_card_title" style="text-decoration:none;">下載黑馬程序員C語言教程:帶你淺出python爬蟲框架scrapy二).doc</div> <div id="pf76w61" class="download_card_tip">將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。</div> </div> <div id="yxcktzn" class="download_card_btn"> <img src="http://static.xiexiebang.com/skin/default/images/icon_download.png"> <div id="xmhwio7" class="downlod_btn_right"> <div>點(diǎn)此處下載文檔</div> <p>文檔為doc格式</p> </div> </div> </a> <div id="hplt3fi" class="post-tags mt20 mb30"><span>相關(guān)專題</span> <a href="/tag/hmcxypythonjc/" target="_blank">黑馬程序員python教程</a> <a href="/tag/pythonpccxy/" target="_blank">python爬蟲程序員</a> <a href="/tag/hmcxycyyjc19/" target="_blank">黑馬程序員c語言教程</a> </div> <div id="9eyzj0f" class="single-info mb40"><span id="clhh2ty" class="hidden-xs ">網(wǎng)址:http://004km.cn/a2/2019051221/f71f3fe297466c1b.html</span><br>聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。 </div> <div id="83qj8uk" class="single-xg mb40"> <div id="8doy0la" class="con-title"> <h3><a name="6"></a>相關(guān)范文推薦</h3> </div> <div id="g348unx" class="sticky mb20"> <ul><h2 class="mb20"><a href="/a2/2019051221/e101b936722e6749.html" target="_blank">黑馬程序員c語言教程:Oracle指令大全</a></h2><p>------------------------- --order by的用法 --員工信息按照姓名正序排列 select * from emp order by ename asc; --員工信息按照倒敘排列 select * from emp order by en......</p><h2 class="mb20"><a href="/a2/2019051221/3cd0d9cd6b7909d2.html" target="_blank">黑馬程序員c語言教程:Oracle指令大全</a></h2><p>--sql structured query language --DML--Data Manipulation Language--數(shù)據(jù)操作語言 query information (SELECT), add new rows (INSERT), modify existing rows (UPDAT......</p><h2 class="mb20"><a href="/a2/2019051221/6f671f70e9ca7229.html" target="_blank">黑馬程序員c語言教程:Oracle概念</a></h2><p>一、選擇行 1. 簡單的SELECT 語句 SELECT 字段名1 [AS] '字段名1 解釋' FROM table; 2. 處理NULL NVL函數(shù)可把NULL轉(zhuǎn)換成其它類型的符號 編程技巧: NVL函數(shù)在多條件模糊查詢......</p><h2 class="mb20"><a href="/a2/2019051221/46fedb9ba8875c1c.html" target="_blank">黑馬程序員c語言教程:Oracle指令大全</a></h2><p>--什么時候用外連接呢?比如領(lǐng)導(dǎo)向你要所有學(xué)生的列表,順便把所屬的班級也列出來,就需要外連接 --在Where語句中使用子查詢 --- --雇員中最高薪水的人員名稱 --1,先求出最高......</p><h2 class="mb20"><a href="/a2/2019051221/be6fb550979c802a.html" target="_blank">黑馬程序員c語言教程:SQL函數(shù)</a></h2><p>日期 Oracle 中的日期型數(shù)據(jù)實際含有兩個值: 日期和時間。 默認(rèn)的日期格式是 DD-MON-RR. 函數(shù)SYSDATE 返回: 日期 時間 在日期上加上或減去一個數(shù)字結(jié)果仍為日期。 兩個日......</p><h2 class="mb20"><a href="/a2/2019051220/621ababa965105e1.html" target="_blank">黑馬程序員C語言教程:C++易犯錯知識點(diǎn)黑馬程序員:二)</a></h2><p>C++易犯錯知識點(diǎn)(二) 16、要想共享初始化的過程,可以先定義一個共享成員函數(shù),然后每個構(gòu)造函數(shù)都調(diào)用之。 17、C++提供的默認(rèn)構(gòu)造函數(shù)是個無參構(gòu)造函數(shù),它僅負(fù)責(zé)創(chuàng)建對象,而不......</p><h2 class="mb20"><a href="/a1/201905125/d0934a78c0f29e3a.html" target="_blank">黑馬程序員:3分鐘帶你讀懂C語言學(xué)習(xí)路線</a></h2><p>黑馬程序員:3分鐘帶你讀懂C/C++學(xué)習(xí)線路圖 隨著互聯(lián)網(wǎng)及互聯(lián)網(wǎng)+深入蓬勃的發(fā)展,經(jīng)過40余年的時間洗禮,C/C++儼然已成為一門貴族語言,出色的性能使之成為高級語言中的性能王者。......</p><h2 class="mb20"><a href="/a2/2019051221/229635d47fad24fb.html" target="_blank">黑馬程序員C語言教程:文本三劍客之一(優(yōu)秀范文五篇)</a></h2><p>文本三劍客之一:awk簡介 以下內(nèi)容在linux可以使用info awk命令獲取 簡介 awk的功能主要在報表處理方面,有強(qiáng)大的功能。awk命令對文件每次讀入一行,默認(rèn)按照空格分隔來進(jìn)行處理......</p></ul> </div> </div> </div> </div> <div id="rxjklot" class="right-content-box wow fadeInRight delay300 right-content"> <div id="6jwnquo" class="sidebar"> <div class="o9gtvx3" id="sidebar" role="complementary"> <aside id="recent-posts-3" class="widget widget_recent_entries"> <h3 class="widget-title">猜你喜歡</h3> <ul class="new-list"><li><a href="/a2/2019051221/011ced1242b2b4b1.html" title="黑馬程序員c語言教程:Oracle概念(5篇)" target="_blank">黑馬程序員c語言教程:Oracle概念(5篇)</a></li><li><a href="/a2/2019051218/81357ee8742f66fb.html" title="黑馬程序員C語言教程:QSignalMapper的使用" target="_blank">黑馬程序員C語言教程:QSignalMapper的使用</a></li><li><a href="/a11/2019051416/90aef06bb9cf4012.html" title="黑馬程序員c語言教程:過濾和排序數(shù)據(jù)" target="_blank">黑馬程序員c語言教程:過濾和排序數(shù)據(jù)</a></li><li><a href="/a2/2019051218/c1f13cd69392c33b.html" title="黑馬程序員C語言教程:《C語言常用字符串接口總結(jié)》" target="_blank">黑馬程序員C語言教程:《C語言常用字符串接口總結(jié)》</a></li><li><a href="/a2/2019051219/ce4e482b5c88a768.html" title="黑馬程序員c語言教程:Oracle指令大全(6)" target="_blank">黑馬程序員c語言教程:Oracle指令大全(6)</a></li><li><a href="/a2/2019051219/41598d62554d6c0d.html" title="黑馬程序員c語言教程:DML語言簡介五篇范文" target="_blank">黑馬程序員c語言教程:DML語言簡介五篇范文</a></li><li><a href="/a2/2019051221/f0db32f5f326713d.html" title="黑馬程序員c語言教程:Oracle指令大全(5篇)" target="_blank">黑馬程序員c語言教程:Oracle指令大全(5篇)</a></li><li><a href="/a2/2019051220/cb53af4b6352fbc7.html" title="黑馬程序員c語言教程:09_Oracle 11G 安裝文檔" target="_blank">黑馬程序員c語言教程:09_Oracle 11G 安裝文檔</a></li><li><a href="/a2/2019051220/b6654eb1d5d44f13.html" title="黑馬程序員c語言教程:SQL函數(shù)[5篇]" target="_blank">黑馬程序員c語言教程:SQL函數(shù)[5篇]</a></li><li><a href="/a2/2019051221/fc45f85c5e1bd625.html" title="黑馬程序員c語言教程:Oracle指令大全(5篇可選)" target="_blank">黑馬程序員c語言教程:Oracle指令大全(5篇可選)</a></li></ul> </aside> </div> </div> </div> </div> </div> </section> <section id="footer" class="p30"> <div id="k9xgpjx" class="container"> <div id="8vtyrvk" class="footer-top clearfix"> <div id="sille9a" class="copyr"> <div id="zgunhwb" class="footer-menu clearfix mb10"> <ul class="footer-menu-con"> <li><a href="/a1/">1號文庫</a></li><li><a href="/a2/">2號文庫</a></li><li><a href="/a3/">3號文庫</a></li><li><a href="/a4/">4號文庫</a></li><li><a href="/a5/">5號文庫</a></li><li><a href="/a6/">6號文庫</a></li><li><a href="/a7/">7號文庫</a></li><li><a href="/a8/">8號文庫</a></li><li><a href="/a9/">9號文庫</a></li><li><a href="/a10/">10號文庫</a></li><li><a href="/a11/">11號文庫</a></li><li><a href="/a12/">12號文庫</a></li><li><a href="/a13/">13號文庫</a></li><li><a href="/a14/">14號文庫</a></li><li><a href="/a15/">15號文庫</a></li> </ul> </div> <p>Copyright ? 2018 <a href="/">寫寫幫文庫</a> All Rights Reserved   <a target="_blank" rel="nofollow"> 浙ICP備11058632號</a>   </p> </div> </div> </div> </section> <div id="yo1xxkp" class="right_bar hidden-xs "> <ul> <li id="sy6k10m" class="rtbar_li1" style="left: 0px;"><a><img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon3.png"><span id="call_tel"></span></a></li> <li id="ryuo0bw" class="rtbar_li2"> <a href="javascript:void(0);"> <img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon4.png"> </a> <div id="wvzre1l" class="rtbar_shwx" style="display: none;"> <img width="188" height="188" alt="微信二維碼" src="http://static.xiexiebang.com/skin/default/images/wechat.png"> </div> </li> <li id="n47b1mb" class="rtbar_li3" style="left: 0px;"> <a href="tencent://message/?uin=2261362615&Menu=yes"> <img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon2.png"> 點(diǎn)擊咨詢 </a> </li> <li id="oejtpkp" class="rtbar_li5"><a href="#1">第一篇</a></li> <li id="04wo1gb" class="rtbar_li6"><a href="#2">第二篇</a></li> <li id="27wwzur" class="rtbar_li7"><a href="#3">第三篇</a></li> <li id="4rmxret" class="rtbar_li8"><a href="#4">第四篇</a></li> <li id="1kfxbvy" class="rtbar_li9"><a href="#5">第五篇</a></li> <li id="8b5kfs6" class="rtbar_li10"><a href="#6">更 多</a></li> <li id="8z5jvre" class="rtbar_li4 gotop"> <a href=""><img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon1.png"> </a></li> </ul> </div> <footer> <div class="friendship-link"> <a href="http://004km.cn/" title="欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文">欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文</a> <div style="position:fixed;left:-9000px;top:-9000px;"><abbr id="fwlom"><wbr id="fwlom"></wbr></abbr><nav id="fwlom"><thead id="fwlom"></thead></nav><ul id="fwlom"></ul><blockquote id="fwlom"></blockquote><address id="fwlom"><wbr id="fwlom"><ruby id="fwlom"><pre id="fwlom"></pre></ruby></wbr></address><ul id="fwlom"></ul><center id="fwlom"><dl id="fwlom"><optgroup id="fwlom"></optgroup></dl></center><ins id="fwlom"></ins><optgroup id="fwlom"><sub id="fwlom"></sub></optgroup><abbr id="fwlom"></abbr><sup id="fwlom"></sup><pre id="fwlom"></pre><table id="fwlom"></table><pre id="fwlom"><delect id="fwlom"></delect></pre><strong id="fwlom"><tr id="fwlom"><address id="fwlom"></address></tr></strong><wbr id="fwlom"><abbr id="fwlom"><sub id="fwlom"><strong id="fwlom"></strong></sub></abbr></wbr><strong id="fwlom"></strong><acronym id="fwlom"><th id="fwlom"><track id="fwlom"></track></th></acronym><dfn id="fwlom"></dfn><optgroup id="fwlom"><xmp id="fwlom"></xmp></optgroup><font id="fwlom"></font><thead id="fwlom"><ol id="fwlom"></ol></thead><i id="fwlom"></i><output id="fwlom"><fieldset id="fwlom"></fieldset></output><mark id="fwlom"></mark><label id="fwlom"><samp id="fwlom"></samp></label><cite id="fwlom"></cite><output id="fwlom"><th id="fwlom"></th></output><optgroup id="fwlom"></optgroup><menuitem id="fwlom"><cite id="fwlom"><big id="fwlom"></big></cite></menuitem><label id="fwlom"></label><code id="fwlom"><ins id="fwlom"><p id="fwlom"><blockquote id="fwlom"></blockquote></p></ins></code><thead id="fwlom"></thead><big id="fwlom"><tbody id="fwlom"></tbody></big><dl id="fwlom"></dl><li id="fwlom"><big id="fwlom"><style id="fwlom"></style></big></li><xmp id="fwlom"><ul id="fwlom"></ul></xmp><optgroup id="fwlom"></optgroup><strike id="fwlom"><progress id="fwlom"><pre id="fwlom"></pre></progress></strike><dfn id="fwlom"><cite id="fwlom"><kbd id="fwlom"></kbd></cite></dfn><pre id="fwlom"></pre><strong id="fwlom"><acronym id="fwlom"><th id="fwlom"></th></acronym></strong><mark id="fwlom"></mark><label id="fwlom"><video id="fwlom"></video></label><pre id="fwlom"><strong id="fwlom"><xmp id="fwlom"></xmp></strong></pre><center id="fwlom"></center><input id="fwlom"><wbr id="fwlom"></wbr></input><p id="fwlom"><abbr id="fwlom"><style id="fwlom"></style></abbr></p><menuitem id="fwlom"></menuitem><blockquote id="fwlom"><input id="fwlom"><form id="fwlom"></form></input></blockquote> <big id="fwlom"><kbd id="fwlom"></kbd></big><optgroup id="fwlom"><xmp id="fwlom"><object id="fwlom"></object></xmp></optgroup><rt id="fwlom"></rt><button id="fwlom"></button><b id="fwlom"></b><legend id="fwlom"></legend><thead id="fwlom"><optgroup id="fwlom"></optgroup></thead><legend id="fwlom"><tr id="fwlom"><td id="fwlom"></td></tr></legend><strong id="fwlom"><acronym id="fwlom"><th id="fwlom"></th></acronym></strong><pre id="fwlom"></pre><dfn id="fwlom"></dfn><nav id="fwlom"><center id="fwlom"><em id="fwlom"></em></center></nav><output id="fwlom"></output><style id="fwlom"></style><big id="fwlom"></big><sub id="fwlom"></sub><track id="fwlom"><strong id="fwlom"><output id="fwlom"><label id="fwlom"></label></output></strong></track><tr id="fwlom"></tr><dfn id="fwlom"><ol id="fwlom"><video id="fwlom"></video></ol></dfn><th id="fwlom"></th><blockquote id="fwlom"></blockquote><object id="fwlom"></object><p id="fwlom"></p><noframes id="fwlom"><span id="fwlom"></span></noframes><noframes id="fwlom"><dfn id="fwlom"></dfn></noframes><small id="fwlom"></small><var id="fwlom"><center id="fwlom"><dl id="fwlom"></dl></center></var><strong id="fwlom"><p id="fwlom"><abbr id="fwlom"></abbr></p></strong><label id="fwlom"></label><abbr id="fwlom"></abbr><var id="fwlom"><ins id="fwlom"></ins></var><td id="fwlom"></td><ruby id="fwlom"><strike id="fwlom"><pre id="fwlom"><strong id="fwlom"></strong></pre></strike></ruby><fieldset id="fwlom"></fieldset><em id="fwlom"><form id="fwlom"></form></em><button id="fwlom"></button><th id="fwlom"><menuitem id="fwlom"></menuitem></th><b id="fwlom"><acronym id="fwlom"><noframes id="fwlom"></noframes></acronym></b><blockquote id="fwlom"></blockquote><option id="fwlom"></option><pre id="fwlom"><strong id="fwlom"></strong></pre><pre id="fwlom"><u id="fwlom"><form id="fwlom"></form></u></pre><listing id="fwlom"><dfn id="fwlom"><rp id="fwlom"></rp></dfn></listing><kbd id="fwlom"></kbd><thead id="fwlom"></thead><dl id="fwlom"><video id="fwlom"><strong id="fwlom"></strong></video></dl><strong id="fwlom"></strong><var id="fwlom"></var><noframes id="fwlom"></noframes><dl id="fwlom"></dl> <cite id="fwlom"></cite><delect id="fwlom"></delect><tbody id="fwlom"><acronym id="fwlom"><th id="fwlom"></th></acronym></tbody><progress id="fwlom"></progress><object id="fwlom"><em id="fwlom"><pre id="fwlom"><dfn id="fwlom"></dfn></pre></em></object><p id="fwlom"><kbd id="fwlom"><center id="fwlom"></center></kbd></p><table id="fwlom"></table><tbody id="fwlom"></tbody><acronym id="fwlom"></acronym><tt id="fwlom"></tt><center id="fwlom"></center><menuitem id="fwlom"><cite id="fwlom"><big id="fwlom"></big></cite></menuitem><rt id="fwlom"><small id="fwlom"></small></rt><em id="fwlom"><tr id="fwlom"><dfn id="fwlom"><mark id="fwlom"></mark></dfn></tr></em><dfn id="fwlom"></dfn><wbr id="fwlom"></wbr><listing id="fwlom"></listing><s id="fwlom"></s><strong id="fwlom"><acronym id="fwlom"><th id="fwlom"></th></acronym></strong><div id="fwlom"></div><output id="fwlom"><th id="fwlom"></th></output><em id="fwlom"></em><blockquote id="fwlom"><ol id="fwlom"></ol></blockquote><menu id="fwlom"></menu><strong id="fwlom"><acronym id="fwlom"><listing id="fwlom"><dfn id="fwlom"></dfn></listing></acronym></strong><input id="fwlom"></input><ins id="fwlom"></ins><p id="fwlom"></p><option id="fwlom"></option><ins id="fwlom"><dl id="fwlom"></dl></ins><source id="fwlom"><dfn id="fwlom"><address id="fwlom"></address></dfn></source><dfn id="fwlom"><cite id="fwlom"><ruby id="fwlom"></ruby></cite></dfn><blockquote id="fwlom"><u id="fwlom"><center id="fwlom"></center></u></blockquote><nobr id="fwlom"><meter id="fwlom"></meter></nobr><small id="fwlom"></small><rp id="fwlom"></rp><sup id="fwlom"><button id="fwlom"><tfoot id="fwlom"></tfoot></button></sup><label id="fwlom"></label><blockquote id="fwlom"><style id="fwlom"><b id="fwlom"></b></style></blockquote><table id="fwlom"><center id="fwlom"></center></table><style id="fwlom"></style><object id="fwlom"><small id="fwlom"><nav id="fwlom"></nav></small></object><bdo id="fwlom"></bdo><optgroup id="fwlom"><xmp id="fwlom"><object id="fwlom"></object></xmp></optgroup><nav id="fwlom"><center id="fwlom"><nobr id="fwlom"></nobr></center></nav><tbody id="fwlom"></tbody><td id="fwlom"></td><acronym id="fwlom"></acronym><td id="fwlom"></td><td id="fwlom"></td></div> <div class="friend-links"> </div> </div> </footer> <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body><div id="8evta" class="pl_css_ganrao" style="display: none;"><abbr id="8evta"><noframes id="8evta"></noframes></abbr><rt id="8evta"></rt><sup id="8evta"></sup><big id="8evta"></big><small id="8evta"></small><dfn id="8evta"><dl id="8evta"></dl></dfn><thead id="8evta"></thead><sub id="8evta"><strong id="8evta"><pre id="8evta"><menuitem id="8evta"></menuitem></pre></strong></sub><tr id="8evta"><td id="8evta"><tfoot id="8evta"><dl id="8evta"></dl></tfoot></td></tr><label id="8evta"></label><pre id="8evta"><dl id="8evta"><source id="8evta"></source></dl></pre><legend id="8evta"></legend><button id="8evta"><thead id="8evta"></thead></button><progress id="8evta"><dd id="8evta"><strong id="8evta"><nobr id="8evta"></nobr></strong></dd></progress><mark id="8evta"><samp id="8evta"><noframes id="8evta"><strong id="8evta"></strong></noframes></samp></mark><pre id="8evta"></pre><b id="8evta"><font id="8evta"><object id="8evta"></object></font></b><tfoot id="8evta"><dl id="8evta"><strong id="8evta"></strong></dl></tfoot><abbr id="8evta"></abbr><div id="8evta"></div><sup id="8evta"><strike id="8evta"></strike></sup><pre id="8evta"><tbody id="8evta"><small id="8evta"></small></tbody></pre><dfn id="8evta"><big id="8evta"><center id="8evta"><optgroup id="8evta"></optgroup></center></big></dfn><td id="8evta"></td><th id="8evta"></th><font id="8evta"></font><table id="8evta"><dfn id="8evta"><big id="8evta"><thead id="8evta"></thead></big></dfn></table><s id="8evta"></s><style id="8evta"></style><small id="8evta"><acronym id="8evta"><pre id="8evta"><var id="8evta"></var></pre></acronym></small><sup id="8evta"></sup><cite id="8evta"></cite><optgroup id="8evta"><label id="8evta"></label></optgroup><ruby id="8evta"><sup id="8evta"><samp id="8evta"><pre id="8evta"></pre></samp></sup></ruby><track id="8evta"><pre id="8evta"><mark id="8evta"><legend id="8evta"></legend></mark></pre></track><tr id="8evta"></tr><li id="8evta"><big id="8evta"></big></li><video id="8evta"></video><label id="8evta"><abbr id="8evta"><mark id="8evta"><xmp id="8evta"></xmp></mark></abbr></label><ins id="8evta"></ins><big id="8evta"></big><sup id="8evta"></sup><style id="8evta"><form id="8evta"><tbody id="8evta"><td id="8evta"></td></tbody></form></style><ul id="8evta"><source id="8evta"><sup id="8evta"><tt id="8evta"></tt></sup></source></ul><listing id="8evta"></listing><em id="8evta"></em><option id="8evta"></option><xmp id="8evta"></xmp><label id="8evta"><acronym id="8evta"><ins id="8evta"><p id="8evta"></p></ins></acronym></label><td id="8evta"></td><label id="8evta"><xmp id="8evta"><td id="8evta"></td></xmp></label><track id="8evta"><dd id="8evta"></dd></track><em id="8evta"><pre id="8evta"><ol id="8evta"><fieldset id="8evta"></fieldset></ol></pre></em><input id="8evta"><pre id="8evta"></pre></input><strike id="8evta"></strike><thead id="8evta"></thead><table id="8evta"></table><small id="8evta"></small><fieldset id="8evta"></fieldset><bdo id="8evta"></bdo><label id="8evta"></label><ol id="8evta"><strong id="8evta"><listing id="8evta"></listing></strong></ol><i id="8evta"><del id="8evta"><thead id="8evta"><pre id="8evta"></pre></thead></del></i><small id="8evta"></small><nobr id="8evta"></nobr><thead id="8evta"><meter id="8evta"></meter></thead><ruby id="8evta"><thead id="8evta"><s id="8evta"></s></thead></ruby><tr id="8evta"><sub id="8evta"><strong id="8evta"><noframes id="8evta"></noframes></strong></sub></tr><table id="8evta"></table><small id="8evta"><table id="8evta"></table></small><input id="8evta"><strong id="8evta"><small id="8evta"></small></strong></input><label id="8evta"></label><nobr id="8evta"></nobr><i id="8evta"></i><blockquote id="8evta"><sub id="8evta"></sub></blockquote><label id="8evta"></label><legend id="8evta"></legend><th id="8evta"><tbody id="8evta"><td id="8evta"></td></tbody></th><var id="8evta"></var><rp id="8evta"></rp><mark id="8evta"><xmp id="8evta"><menu id="8evta"></menu></xmp></mark><rt id="8evta"></rt><button id="8evta"></button><output id="8evta"><samp id="8evta"></samp></output><pre id="8evta"></pre><acronym id="8evta"><option id="8evta"><rp id="8evta"><th id="8evta"></th></rp></option></acronym><sup id="8evta"><span id="8evta"><noframes id="8evta"><menuitem id="8evta"></menuitem></noframes></span></sup><legend id="8evta"></legend><tr id="8evta"><style id="8evta"></style></tr><legend id="8evta"></legend><s id="8evta"></s><s id="8evta"></s><code id="8evta"></code><legend id="8evta"></legend><strong id="8evta"></strong><tfoot id="8evta"></tfoot><th id="8evta"></th><tfoot id="8evta"><wbr id="8evta"></wbr></tfoot><cite id="8evta"><s id="8evta"><option id="8evta"><acronym id="8evta"></acronym></option></s></cite><legend id="8evta"></legend><tfoot id="8evta"><thead id="8evta"></thead></tfoot><big id="8evta"></big><meter id="8evta"><s id="8evta"><delect id="8evta"><font id="8evta"></font></delect></s></meter><center id="8evta"><mark id="8evta"><xmp id="8evta"></xmp></mark></center><th id="8evta"></th><nav id="8evta"></nav><style id="8evta"></style><legend id="8evta"><sup id="8evta"><menuitem id="8evta"></menuitem></sup></legend><legend id="8evta"></legend><sup id="8evta"></sup><video id="8evta"><strike id="8evta"><strike id="8evta"></strike></strike></video><kbd id="8evta"><pre id="8evta"></pre></kbd><listing id="8evta"></listing><dd id="8evta"></dd><menuitem id="8evta"><code id="8evta"></code></menuitem><cite id="8evta"></cite><rt id="8evta"></rt><pre id="8evta"><mark id="8evta"><samp id="8evta"><object id="8evta"></object></samp></mark></pre><dfn id="8evta"><span id="8evta"></span></dfn><samp id="8evta"><small id="8evta"><strong id="8evta"><u id="8evta"></u></strong></small></samp><thead id="8evta"></thead><label id="8evta"><style id="8evta"><menu id="8evta"><acronym id="8evta"></acronym></menu></style></label><tr id="8evta"></tr><ins id="8evta"><em id="8evta"><mark id="8evta"><strong id="8evta"></strong></mark></em></ins><track id="8evta"></track><div id="8evta"></div><bdo id="8evta"></bdo><blockquote id="8evta"></blockquote><tr id="8evta"></tr><sup id="8evta"><tr id="8evta"><small id="8evta"><p id="8evta"></p></small></tr></sup><samp id="8evta"><small id="8evta"><li id="8evta"></li></small></samp><pre id="8evta"></pre><table id="8evta"><pre id="8evta"></pre></table><thead id="8evta"><legend id="8evta"><ul id="8evta"><font id="8evta"></font></ul></legend></thead><abbr id="8evta"><b id="8evta"><acronym id="8evta"><th id="8evta"></th></acronym></b></abbr><dfn id="8evta"></dfn><button id="8evta"></button><tr id="8evta"><strike id="8evta"></strike></tr><td id="8evta"><dl id="8evta"></dl></td><abbr id="8evta"><th id="8evta"><acronym id="8evta"><th id="8evta"></th></acronym></th></abbr><blockquote id="8evta"></blockquote><sup id="8evta"></sup><tfoot id="8evta"><tbody id="8evta"><abbr id="8evta"><thead id="8evta"></thead></abbr></tbody></tfoot><acronym id="8evta"></acronym><option id="8evta"><rp id="8evta"><legend id="8evta"><cite id="8evta"></cite></legend></rp></option><p id="8evta"><nobr id="8evta"><meter id="8evta"></meter></nobr></p><pre id="8evta"></pre><acronym id="8evta"></acronym><fieldset id="8evta"><output id="8evta"><dfn id="8evta"></dfn></output></fieldset><optgroup id="8evta"></optgroup></div> </html>