乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      數(shù)據(jù)庫

       印度阿三17 2019-03-10
      1 .數(shù)據(jù)庫的優(yōu)勢:
      1.程序的穩(wěn)定性:任意一臺服務(wù)所在的機器崩潰了都不會影響數(shù)據(jù)的和另外的服務(wù)
      2.數(shù)據(jù)一致性: 所有的數(shù)據(jù)都存儲在一起,所有的程序操作的數(shù)據(jù)都是統(tǒng)一的
      3.并發(fā):數(shù)據(jù)庫可以良好的支持并發(fā)
      4.效率;使用數(shù)據(jù)對數(shù)據(jù)的進行增刪改查的效率要高出我們自己處理文件很多

      2 .數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)管理系統(tǒng),數(shù)據(jù)庫,表與記錄的關(guān)系:
      記錄: 1 朱哥 123456789 22 (多個字段組成的一條記錄,即文件的一行內(nèi)容)
      表: 即文件
      數(shù)據(jù)庫: database(文件夾)
      數(shù)據(jù)庫管理系統(tǒng) : mysql (是一個軟件)
      數(shù)據(jù)庫服務(wù)器: 相當(dāng)于一臺電腦
      總結(jié):
      數(shù)據(jù)庫服務(wù)器:運行數(shù)據(jù)庫管理軟件的機器
      數(shù)據(jù)庫管理軟件: 管理數(shù)據(jù)庫
      數(shù)據(jù)庫:即文件夾,用來組織文件/表
      表:文件,用來存放多行記錄/數(shù)據(jù)
      3 .數(shù)據(jù)庫的分類:關(guān)系型數(shù)據(jù)庫 和非關(guān)系型數(shù)據(jù)庫
      關(guān)系型數(shù)據(jù)庫:需要表結(jié)構(gòu)
      mysql ,oracle ,SQL server, db2
      非關(guān)系型數(shù)據(jù)庫:不需要表結(jié)構(gòu)
      redis ,mongodb,memcache
      4 . mysql
      mysql是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在wed應(yīng)用方面是最好的RDBMS應(yīng)用軟件
      體積小,速度快,成本低,開放源碼,一般適合中小型網(wǎng)站的開發(fā)

      5 .sql語句
      關(guān)于用戶,權(quán)限,遠程登錄
      select user(); 查看當(dāng)前用戶
      exit 退出 也可以用quit or \q
      mysql -uroot -p 使用管理員賬戶登錄
      set password = password('root') 給當(dāng)前數(shù)據(jù)庫設(shè)置密碼

      create user '用戶名'@'ip地址' identified by '密碼'
      創(chuàng)建用戶和密碼 必須要包含ip地址
      create user '用戶'@'ip地址'
      指定某個機器可以連上
      create 'user'@'ip'%'
      所有的機器都可以連接
      show grants for '用戶名'%'ip地址';
      查看某個用戶的權(quán)限
      mysql -u用戶名 -p密碼 -hIP地址
      遠程登陸

      grant all on *.* to '用戶名'@'ip地址' 給賬號授權(quán)
      flush privileges; 刷新使授權(quán)立即生效
      grant all on 數(shù)據(jù)庫.表名 '用戶名'@'ip地址' identified by '123'
      創(chuàng)建賬號 并給其授權(quán)
      enum(選擇1,選擇2):必須二選一
      set(選擇1,選擇2,選擇3):多選

      關(guān)于操作庫的:
      増:create database 庫名 charset utf8;
      查:show databases;
      改:alter database 庫名 charset utf8;
      刪: drop database 庫名;

      關(guān)于操作文件(表)的:
      先切換到庫中:use 庫名;
      増:create table 表名(id int,name char(15));
      查:show tables;
      刪:drop table '表名';
      改:alter table '表名' modify name char(3); 修改字段的數(shù)據(jù)類型
      alter table '表名' change '舊字段' '新字段' char(5); 修改字段的名字

      關(guān)于文件中的內(nèi)容(記錄):
      増:insert into '表名' values (1,'alex1'),(2,'alex2'),(3,'alex3')
      查:select 字段 from '表名';
      改:undate 表名 set name = 'sb' where id = 2;
      undate 表名 set name = 'sb' where id = 2;
      刪:delete from '表名' where id =1;

      清空表:delete from '表名'

      auto_increment 表示:自增
      primary key 約束 (not null unique) 不能重復(fù) 不能為空 ;方便查找

      6. mysql中的存儲引擎
      innodb myisam memory blackhole
      innodb :支持事務(wù),行級鎖,外鍵
      mysisam:支持表級鎖
      memory: 內(nèi)存級別的存儲引擎
      具有緩存的作用
      不能完成數(shù)據(jù)的持久化存儲,mysql server重啟后會失效(起到緩存的作用)
      blackhole:黑洞 所有的數(shù)據(jù)都會寫入,但是都不會記錄到表中
      事務(wù):多個sql語句組成的一個完整的事件,要么一起成功,要么一起失敗
      行級鎖:能夠支持更多的修改數(shù)據(jù)的并發(fā)操作 當(dāng)要修改的行數(shù)非常多的時候,效率也會受到影響
      外鍵:在本表中有一個字段 關(guān)聯(lián)外表中的另一個字段
      表級鎖:不能支持并發(fā)的修改同一張表的數(shù)據(jù) 不需要加很多細(xì)粒度的鎖來浪費時間

      查看當(dāng)前默認(rèn)的存儲引擎:
      show variables like 'default_storage_engine'
      查看當(dāng)前數(shù)據(jù)庫支持的存儲引擎:
      show engines \G;

      7. 表操作
      表相當(dāng)于文件,表中的一條記錄就相當(dāng)于文件的一行內(nèi)容,不同的是一條記錄有對應(yīng)的標(biāo)題,稱為表的字段
      查看表結(jié)構(gòu)
      desc 表名;
      查看標(biāo)的詳細(xì)信息(編碼和存儲引擎)
      show create table 表名 \G;

      8 . 基礎(chǔ)數(shù)據(jù)類型
      整數(shù) int
      整型的長度約束 實際上沒有效果
      小數(shù) float
      float(n,m) 這個數(shù)據(jù)的總長度n,小數(shù)位m
      時間格式
      now()
      year
      data
      time
      datetime 允許為空,沒有默認(rèn)值,能夠在標(biāo)識的時間范圍大
      timestamp 不允許為空 默認(rèn)值是當(dāng)前時間,能夠表示的時間范圍小,超出范圍后表示為
      0000-00-00 00:00:00
      若同一個表中有兩個該字段,只有第一個字段會被表示為當(dāng)前默認(rèn)當(dāng)前時間
      字符串格式
      char 定長 存儲相對浪費空間,存儲速度快,不管存儲什么樣的數(shù)據(jù)都會把數(shù)據(jù)的空格在顯示的時候去掉
      varchar 變長 相對節(jié)省空間.存儲效率相對慢

      9 . 完整性約束
      not null :非空約束 指定某列不能為空
      unique:唯一約束 指定某列或者幾列的組合不能重復(fù)
      primary key:主鍵,指定該列的值可以唯一的標(biāo)識該列數(shù)據(jù)
      foreign key:外鍵,指定該行記錄從屬主表中的一條記錄,主要用于參照完整性
      default:默認(rèn)值
      指定unique的幾種方式:
      create table t1(id int unique);
      create table t1(id int,unique(id));
      not null 和 unique連用相當(dāng)于設(shè)置主鍵
      聯(lián)合唯一:
      create table t1(id int,name char(5),age int(3),unique(id,name)
      primary key:主鍵
      單字段主鍵
      1.not null unique
      2.在某一字段后加primary key
      3.在所有字段后加上primary key(字段)
      4.給已經(jīng)建成的字段設(shè)置主鍵
      alter table t1 modify id int primary key
      多字段主鍵:
      1.在每個字段后設(shè)置 primary key
      2.在所有字段后設(shè)置primary key(字段1,字段2)
      auto_increament:約束字段自動增長 被約束的字段必須同時被key約束

      foreikey:外鍵
      設(shè)置外鍵的前提,必須是innodb存儲引擎,且被關(guān)聯(lián)的字段必須是唯一的
      一張表只能有一個主鍵,所有的其它非空 唯一都不會成為主鍵還是維持他原來的約束

      10. 修改表結(jié)構(gòu):
      修改表名:
      alter table 表名 rename 新表名;
      增加字段:
      alter table 表名 add 字段名 數(shù)據(jù)類型;
      刪除字段:
      alter table 表名 drop 字段名;
      修改字段:
      alter table 表名 modify 字段名 數(shù)據(jù)類型;modify 修改字段的類型和數(shù)據(jù)類型
      alter table 表名 change 字段名 新的字段名 舊的數(shù)據(jù)類型
      alter table 表名 change 字段名 新的字段名 新的數(shù)據(jù)類型
      11. 查數(shù)據(jù)
      select 字段 from 表名
      單表查詢:
      distinct關(guān)鍵字 去重
      select distinct 字段名 from 表;
      select可以進行四則運算
      select 字段*12 from 表;
      可以給字段重新命名
      select 字段 as 新字段名 from 表;
      格式化函數(shù):concat concat_ws()
      concat('自己想拼的內(nèi)容','字段','其他內(nèi)容) #相當(dāng)于python中的format
      concat_ws('_',字段1,字段2) #等同于python中的join
      條件判斷:
      case
      when 條件1 then 字段的操作
      when 條件2 then 字段的操作
      else 字段的操作
      end
      where 條件
      對表中的數(shù)據(jù)進行一個數(shù)據(jù)篩選
      對一個值進行判斷
      = < > != >= <=
      對一個范圍的判斷
      between 小的值 and 大的值
      in (值1,值2,值3)
      模糊匹配: like 'a%' 'a_'
      %是通配符 匹配任意長度的任意內(nèi)容
      'a_'匹配以a開頭的字符 _代表一個任意字符
      多個條件的拼接
      邏輯運算符
      and 兩個條件必須都要成立
      or 其中一個條件成立即可
      not 非
      group by分組
      select 字段名 from 表 where 條件 group by 字段名
      group by 聚合函數(shù)
      聚合函數(shù)算出來的結(jié)果 只是代表分組的一組的結(jié)果
      order by 排序 默認(rèn)升序 后加上desc就是降序
      linit(n,m)從n開始到到去m個值


      select distinct 要篩選的字段 from 表
      where 條件
      group by 分組
      having 過濾
      order by 排序
      limit 取從m開始的前n個
      12. 多表查詢
      連表查詢
      表的笛卡爾積
      內(nèi)連接(inner join) :只有兩張表中條件互相匹配的項才能被顯示出來
      select 字段 from 表1 inner join 表2 on 表1的關(guān)聯(lián)鍵和表2的關(guān)聯(lián)鍵
      外鏈接:
      左外鏈接:
      select * from 表1 left join 表2 on 表1的字段 關(guān)聯(lián) 表2的字段
      右外連接:
      select * from 表1 right join 表2 on 表1的字段 關(guān)聯(lián) 表2的字段
      全外連接:
      select * from 表1 inner join 表2 on 表1的字段 關(guān)聯(lián) 表2的字段
      13. 子查詢(效率比連表查詢低)
      將條件分開逐步去分析

      來源:http://www./content-2-135851.html

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多