日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

前端学习框架 - 数据库

發(fā)布時間:2024/1/1 HTML 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端学习框架 - 数据库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

項目流程?---- 數(shù)據(jù)庫 ---- JS基礎 ---- 服務器端開發(fā)

項目流程

項目常用快捷鍵:

  • ? ? ? ? Windows + d? ? ? ? 顯示/隱藏桌面
  • ? ? ? ? Windows + e? ? ? ? 打開“文件資源管理器”
  • ? ? ? ? Windows + r? ? ? ? 打開“運行窗口”
    • calc? ? ? ? 計算器
    • cmd? ? ? ? 終端(命令行)
    • mspaint? 繪圖

軟件工程

  • 含義:

    • 在保證軟件的質(zhì)量,工期的前提下,開發(fā)出具有時效性,可維護,可追蹤,可移植的軟件產(chǎn)品。
  • 軟件的“生命周期”:

    • 軟件定義期
      • 可行性研究階段:研究所需要的技術;人力;設備;時間;資金;回報率;政策;風俗習慣。
      • 需求分析階段:主要分為功能性需求分析/非功能性需求分析。【非功能性需求是功能性需求正常運行的前提條件】
    • 軟件開發(fā)期
      • 概要設計階段----職位:架構師
        • 技術選型:數(shù)據(jù)庫設計;子系統(tǒng);模塊?
      • 詳細設計階段----職位:模塊負責人
        • 負責頁面;頁面內(nèi)容;頁面屬性;產(chǎn)品交互
      • 編碼實現(xiàn)階段----職位:UI/前端/后端 工程師
        • UI工程師提供產(chǎn)品效果圖,前端工程師將效果圖轉換為Html,CSS,JS文件,后端工程師為前端提供所需要的數(shù)據(jù)
      • 測試階段----職位:軟件測試工程師
        • 軟件維護,涉及各個階段
    • 軟件維護期
      • 部署階段----職位:運維工程師
        • 將項目部署到服務器,從開發(fā)階段進入產(chǎn)品階段
      • 維護階段
        • 軟件維護,涉及各個階段

數(shù)據(jù)庫

  • 定義:

    • ?用于存放項目中所使用的數(shù)據(jù)。
  • 存儲數(shù)據(jù)的形式:
    • 內(nèi)存;文件;第三方服務器;數(shù)據(jù)庫存儲
  • 數(shù)據(jù)庫產(chǎn)品:
    • mySQL,SQLSever,Oracle
  • 數(shù)據(jù)庫分類:
    • 網(wǎng)狀數(shù)據(jù)庫;層次型數(shù)據(jù)庫;關系型數(shù)據(jù)庫;非關系型數(shù)據(jù)庫

?????????關系型數(shù)據(jù)庫

????????? ? ? 邏輯結構:Secer------>Database-------->Table----------->Row---------->Column? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?數(shù)據(jù)庫服務------>數(shù)據(jù)庫------>數(shù)據(jù)表-------------->行------------->列

  • MySQL部署結構
  • 服務器端:負責存儲/維護數(shù)據(jù)-----銀行的數(shù)據(jù)服務器
  • 客戶端:負責連接數(shù)據(jù)庫服務器,對數(shù)據(jù)進行增刪改查------ATM機

? ? ? ? ? ? ? ? ? ? 使用客戶端連接服務器端的方法:

? ? ? ? ? ? ? ? ? ? mysql.exe -hlocalhost -P3306 -uroot -p

? ? ? ? ? ? ? ? ? 理解:-h=====host====IP地址/域名====127.0.0.1/localhost

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-p=====port====端口號

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-u=====user====用戶名======root管理員

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-p=====password===密碼

  • MySQL常用管理命令:(mySQL為例)
    • mysql-uroot? ? ? ? ? ? ? ? 進入MariaDB數(shù)據(jù)庫【uroot后加“;”為游客身份進入,缺失部分權限。不加“;”為管理員身份,擁有最高權限】?
    • show databases;? ? ?查看服務器上當前所有的數(shù)據(jù)庫
    • use 數(shù)據(jù)庫名稱;? ? ? 進入指定數(shù)據(jù)庫
    • show tables;? ? ? ? ? ? 顯示當前數(shù)據(jù)庫中的所有數(shù)據(jù)表
    • desc 表名;? ? ? ? ? ? ? ?查看表中的列名
    • CREATE DATABASE? 數(shù)據(jù)庫名稱;
    • USE? ?數(shù)據(jù)庫名?? ? ? ? ?進入數(shù)據(jù)庫
    • CREATE TABLE 表名(列名1 數(shù)據(jù)類型,列名2 數(shù)據(jù)類型,列名3 數(shù)據(jù)類型..)? ?創(chuàng)建數(shù)據(jù)表
    • DROP DATABASE IF EXISTS 表名;? ? ? 刪除指定數(shù)據(jù)表【前提該表存在】
    • INSRT INTO 表名 VALUES(數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3)? ? ? 插入數(shù)據(jù)【數(shù)據(jù)與創(chuàng)建數(shù)據(jù)表類型一致】
    • SELECT * FROM 表名? ? ? ? 查詢數(shù)據(jù)(表內(nèi)所有數(shù)據(jù))
      • SELECT * FROM emp where 約束條件;? ? ? ? 查詢指定數(shù)據(jù)
    • UPDATE 表名 set 修改數(shù)據(jù)1,修改數(shù)據(jù)2 where 約束條件? ? ? ? ? 修改指定數(shù)據(jù)
    • DELETE FROM 表名;? ? ?刪除整個表中數(shù)據(jù)
      • DELETE FROM 表名? where? 條件;? ? ? ?刪除表中指定元素
    • MySQL常用的列存儲數(shù)據(jù)類型

      • 數(shù)值型? ? ? ? 可省略引號
        • tinyint? ? ? ?微整型,1字節(jié)? ? ? ? 范圍:-128-127
        • smallint? ? ?小整型,2字節(jié)? ? ? ? 范圍:-32768-32767
        • int? ? ?整型,4個字節(jié)? ? ? ? ?范圍:-2147483648-2147483647
        • bigint? ?大整型,8個字節(jié)
        • float? ? ?單精度浮點數(shù),4個字節(jié)? ? ? 范圍比int大的多,犧牲小數(shù)點后若干位為代價,數(shù)字越大精度越低,最大值為3.4e38
        • double? ?雙精度浮點數(shù),8個字節(jié)? 范圍比bigint大的多,數(shù)值越大精度越低。
        • decimal(M,D)? ?定點小數(shù),小數(shù)點的位置不會發(fā)生變化,M:總的有效位數(shù),D:小數(shù)位數(shù)
        • boolean/bool? ? ? ? ? ?布爾型,只有兩個值,true / false
          • 【true,false為關鍵字不可以加引號,在使用布爾型會自動轉換為tinyint類型,true為1,false為0】
      • 日期時間型? ? ? ? 不可以省略引號
        • date ----- 日期型 ------2021/01/06
        • time ----- 時間型 ------ 15:20:35
        • datetime? ?------? 日期時間型? ?-----? 2021/02/20? 15:30:20
      • 字符串型? ? ? ? ?不可省略引號

        • ?varchar(n)? ? ? ?變長字符串:幾乎不會產(chǎn)生空間浪費,數(shù)據(jù)的操作速度相對慢,n的最大值為65535,用于存儲變化長度的數(shù)據(jù)。例如:標題;人名
        • char(m)? ? ? ? ? ? 定長字符串:可能會產(chǎn)生空間浪費,數(shù)據(jù)的操作速度相對較快,m的最大值為255,用于存儲固定長度的字符串。例如:身份證號;手機號
        • text(x)? ? ? ? ? ? ? 大型變長字符串,x最大值為2G
        • ? ? ? ??? ? ? ??
      • 列約束

        • MySQL可以對插入的數(shù)據(jù)進行驗證,只有滿足條件才允許插入。例如:性別只為男女......

        • ?列約束的書寫位置為在創(chuàng)建數(shù)據(jù)表的同時添加

          • CREATE TABLE? 表名(id? int? ? 列約束)

        • 主鍵約束? ? ? ?primary? key

          • 聲明了主鍵約束的列上不允許插入重復值,一個表中只能有一個主鍵,主鍵的值不能為null,常常添加在編號列,這樣做不但會避免重復值,同樣也可以加快數(shù)據(jù)的查詢數(shù)據(jù),編號按照從小到大排列。

        • 非空約束? ? ? ?not? null

          • 聲明了非空約束的列上禁止為null

        • 唯一約束? ? ? unique

          • 聲明了唯一約束的列不允許插入重復的值,允許插入null,甚至多個null。可能會影響排序。

        • 默認值約束? ? default

          • 可以使用default來設置默認值,首先表中列名? 數(shù)據(jù)類型時可以定義默認值。

          • 使用方法: 插入數(shù)據(jù)? INSERT INTO 表名(default) --------調(diào)用默認值

        • 檢查約束? ? ? check

          • 主要用于創(chuàng)建表時,進行的數(shù)據(jù)篩選。

          • 使用方法:CREATE TABLE 表名( 列名1? 數(shù)據(jù)類型? 檢查約束)

          • 【MySQL不支持檢查約束,會影響數(shù)據(jù)的插入速度,一般由后端進行數(shù)據(jù)篩選。】

        • 外鍵約束? ? ??

          • 聲明了外鍵約束的列,插入的值必須要在另一個表的主鍵列中出現(xiàn)過才可以;外鍵列數(shù)據(jù)類型要與對應的主鍵列數(shù)據(jù)類型保持一致。

          • 使用方法: foreign? key? (外鍵列)? references? ?另一個表 (主鍵列);

          • 【外鍵約束的目的是為了讓兩表產(chǎn)生關聯(lián)】

        • 自增列?

          • 自動增加,設置了自增列,在插入null,就會獲取當前最大值然后加一插入。

          • 使用方法:auto _increment? ? ??

      • 簡單查詢

        • 查詢特定列

          • SELECT? 列1,列2... FROM?表名;

        • 查詢所有列?
          • SELECT *FROM 表名;
          • SELECT 列1,列2,列3.... FROM 表名;
        • ? 給列起別名
          • SELECT 列1? as? 列1? ?FROM? ?表名;【as? 可省略】
        • 顯示不同記錄(相當于python中的group by)
          • SELECT? dictinct? ?列名? ? from? ? 表名;
        • 查詢時執(zhí)行計算
          • SELECT 36+2+2;
          • 列計算:SELECT? 列1*10? FROM 表名;
        • 查詢時排序? ?order? by? ?asc/desc
          • 方法1:SELECT *FROM 表名? order? by? 列1(參照) asc/desc;
          • 方法2:SELECT *FROM 表名? order? by? 列1(參照) asc/desc? 列2(參照);
          • 方法3:SELECT *FROM 表名 order? ?by? ?列名1(參照1),列名2(參照2)';
      • ? 條件查詢

        • 查詢指定數(shù)據(jù)
          • SELECT? * FROM 表名? where? 約束條件;
          • SELECT? ?*FROM 表名? where? in(條件1,條件2...)/? SELECR? *FROM? 表名? where? not? in(條件1,條件2.....)? ? ? ? ? ? 查詢滿足其中一項條件的數(shù)據(jù)
          • SELECT? ?*FROM? 表名? ?where? ?列名? ? is? ?null / SELECT? *FROM? 表名? where? ?列名? ?is? not? ?null;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查詢結果為空/非空
      • 模糊條件查詢? ? ? ? like
        • ?SELECT? *FROM? 表名? ? where? ? 列名? ?like? ?"約束條件";
          • 【約束條件:% 匹配任意字符(0個或多個)? ?_ 匹配一個字符? (1個)? ?約束條件必須與like連用】? ? ? ? ? ?

總結

以上是生活随笔為你收集整理的前端学习框架 - 数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。