認識mysql(1)

来源:https://www.cnblogs.com/python-sl/archive/2018/08/19/9501935.html
-Advertisement-
Play Games

恢復內容開始 1、MySQL概述 1.什麼是資料庫? 存儲數據的倉庫 2.都有哪些公司在用資料庫? 金融機構、游戲公司、購物網站、論壇網站... 3.提供資料庫服務的軟體? 1.軟體分類 MySQL、Oracle、SQL_Server、DB2、MongoDB、MariaDB 2.生產環境中,如何選擇 ...


---恢復內容開始---

1、MySQL概述

  1.什麼是資料庫?

  存儲數據的倉庫

  2.都有哪些公司在用資料庫?

  金融機構、游戲公司、購物網站、論壇網站...

  3.提供資料庫服務的軟體?

    1.軟體分類

      MySQL、Oracle、SQL_Server、DB2、MongoDB、MariaDB

    2.生產環境中,如何選擇使用哪個資料庫軟體?

      開源:MYSql,Mariadb,MongoDB

      不開源:Oracle,DB2,SQL_Server

    3.公司的類型:

      1.商業資料庫:政府部門,金融機構

      2.開源資料庫:游戲網站、購物網站、論壇網站.....

  4、MySQL的特點

  1.關係型資料庫

    1.關係型資料庫特點

      1.數據是以行和列(表格)的形式去存儲

      2.表中的每一行叫一條記錄,每一列叫一個欄位

      3.表和表之間的羅技關聯叫關係

    2.示例

      1.關係型資料庫存儲

        表1  學生信息表

        姓名  年齡  班級

        星矢  25     三班

        水冰月 29    六班

        表2  班級信息表

        班級  班主任  

        三班  大空翼

        六班  松人

      2.非關係型資料庫中存儲

        {"姓名":"水冰月","年齡":"25"}

    2、跨平臺

      可以在Unix,Linux,Windows上運行資料庫服務;

    3、支持多種編程語言

      python,java,php,c/c++....

  5、資料庫軟體。資料庫、數據倉庫的概念

  1.資料庫軟體

    一個軟體,看得見,可操作,實現資料庫的邏輯功能

  2、資料庫

    是一種邏輯概念,用來存放數據的倉庫,側重存儲

  3、數據倉庫

    從數據量上來說,比資料庫龐大的多,主要用於數據分析和數據挖掘

2、MySQL安裝

  1.Ubuntu安裝

    安裝服務端

      sudo apt-get install mysql-server

    安裝客戶端

      sudo apt-get install mysql-client

    Ubuntu安裝軟體   

      1、sudo apt-get update

      訪問源列表中的每個網站,讀取軟體列表,保存到本地/var/lib/apt/lists

      2、sudo apt-get upgrade

      把本地已安裝軟體與剛下載的軟體列表進行對比,如果發現已安裝版本低則更新

      3、sudo apt-get -f install

      修複依賴關係

3、啟動和鏈接MySQL服務

  1.服務端啟動

    1.查看MySQL狀態

      sudo /etc/init.d/mysql status

  2、客戶端連接

    1命令格式

      mysql -h主機地址 -u用戶名 -p密碼

      如:mysql -hlocalhost -uroot -p123456

    2.本地連接可省略 -h選項

      mysql -uroot -p123456

4、基本SQL命令

  1.SQL命令的使用規則

    1.每條命令的使用規則

      1.每條命令必須以;結尾

      2.SQL命令不區分字母大小寫

      3.使用\c來終止當前命令的執行

  2.庫的管理

    1.庫的基本操作

      1.查看已有庫

      show databases;

      2.創建庫(指定字元集)

      create database 庫名 [character set utf8];

      3.查看創建庫的語句(字元集)

      show create database 庫名
      4.查看當前所在庫

      select database 庫名;

      5.切換庫

      use 庫名;

      6.查看庫中已有庫

      show tables;

      7.刪除庫

       drop database 庫名;

    2、庫名的命名規則

      1.數字、字母、下劃線。但不能使用純數字

      2.庫名區分字母大小寫

      3.不能使用特殊字元和mysql關鍵字

    3、練習

      1、創建庫testdb,指定字元集為 utf8

      create database testdb character set utf8;
      2、進入到庫 testdb
      use testdb;
      3、查看當前所在庫
      select database();
      4、創建庫 testdb2,指定字元集為 latin1
      create database testdb2 character set latin1;
      5、進入到庫 testdb2
      use testdb2;
      6、查看 testdb2 的字元集(查看創建庫的語句)
      show create database testdb2;
      7、刪除庫 testdb
      drop database testdb;
      8、刪除庫 testdb2
      drop database testdb2;

  3、表的管理

    1.表的基本操作

      1.創建表(指定字元集)

      create table 表名(

      欄位名 數據類型,

      欄位名 數據類型,

      ...

      );

    2、查看已有表的字元集
    show create table 表名;
    3、查看表結構
    desc 表名;
    4、刪除表
    drop table 表名;

5、Mac安裝mysql
  1、cd
  2、vi .bash_profile
  添加 :PATH="$PATH":/usr/local/mysql/bin
  3、source .bash_profile

6、表記錄管理

  插入(insert)

    1、insert into 表名 values(值1),(值2),...;

    2、insert into 表名(欄位1,...) values(值1),...; 

  2、查詢(select)
    1、select * from 表名 [where 條件];
    2、select 欄位1,欄位名2 from 表名 [where 條件];

5、如何更改預設字元集

  1、方法(通過更改MySQL配置文件實現)

  2、步驟
    1、獲取root許可權
      sudo -i
    2、cd /etc/mysql/mysql.conf.d/
    3、備份 :cp mysqld.cnf mysqld.cnf.bak
    4、subl mysqld.cnf
    [mysqld]

    character_set_server = utf8
    5、重啟mysql服務
    /etc/init.d/mysql restart

    MAC:/etc/my.cnf

    [mysqld]
    character_set_server = utf8

 6、客戶端把數據存儲到資料庫伺服器上的過程

  1、連接到數據伺服器 mysql -uroot -p123456
  2、選擇一個庫 use 庫名
  3、創建表/修改表 update 表名...
  4、斷開與資料庫連接 exit; | quit; | \q;

7、數據類型
  1、數值類型
    1、整型
      1、int 大整型(4個位元組)
      取值範圍 :2**32 - 1(42億多)
      2、tinyint 微小整型(1個位元組)
      1、有符號(signed預設) : -128 ~ 127
      2、無符號(unsigned) : 0 ~ 255
      age tinyint unsigned,
      3、smallint 小整型(2個位元組)
      4、bigint 極大整型(8個位元組)

     2、浮點型

      1、用法

        欄位名 float(m,n)  m->總位數 n->小數位位數

        float(5,2)取值範圍? -999.99 ~ 999.99

       2、decimal(最多顯示28個有效位)

        1、decimal(m,n)

           2、存儲空間(整數、小數分開存儲)

            規則:將9的倍數包裝成4個位元組

          示例:decimal(19,9)

          整數部分:10/9=商1餘1 4位元組+1位元組=5位元組

          小數部分:9/9=商1餘0 4位元組+0位元組=4位元組

          占:9位元組

      

  2、字元類型
    1、char(定長)
      1、取值範圍:1~255
    2、varchar(變長)
      1、取值範圍:1~65535
      2、text / longtext(4G) / blob / longblob(4G)
    3、char和varchar的特點
      1、char :浪費存儲空間,性能高
      2、varchar :節省存儲空間,性能低

 

 

 

 

 

 

 

 

      

---恢復內容結束---


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 第1章 shell基礎 1.1 什麼是shell Shell是一個命令解釋器,它在操作系統的最外層,負責直接與用戶對話,把用戶的輸入解釋給操作系統,並處理各種各樣的操作系統的輸出結果,輸出屏幕返回給用戶。 1.1.1 shell對話方式 交互的方式:從鍵盤輸入命令,通過/bin/bash的解析,可以 ...
  • 前言 最近沒更新新篇幅了,今天就來點幹活,過多的也不說了下麵著手乾!乾!乾! 準備環境 centos7.5 apr-1.6.3.tar.gz apr-util-1.6.1.tar.gz httpd-2.4.34.tar.bz2 php-7.1.18.tar.bz2 mariadb-10.2.16-l ...
  • 註:轉載請標明文章來源,感謝支持作者勞動! 一、問題描述 用iphone手機上的nRF connect軟體調試藍牙通信。 1、nRF52藍牙demo電路板,燒錄一個SDK的程式,iphone手機可以成功連接及發現服務。如下圖, 2、之後燒錄另一個固件,發現掃描出現的藍牙名稱等信息均已經改變,但是點擊 ...
  • Linux下su與su -命令的區別 在啟動伺服器ntpd服務時遇到一個問題 使用 su root 切換到root用戶後,不可以使用service命令; 使用 su - 後,就可以使用service命令了。 原因: su命令和su -命令區別就是: su只是切換了root身份,但Shell環境仍然是 ...
  • 應朋友要求,寫個存儲過程說明,本篇比較簡單,適合新接觸存儲過程的同學 先來個簡單的 如果使用的是PL/SQL,執行後會在output中列印my first execute,那麼這裡就有了第一個功能 dbms_output.put_line,在output裡面列印結果,另外還有dbms_output. ...
  • 1、下載安裝 1.1 下載: 1.2 解壓 1.3 初始化 1.4 啟動mysql服務 1.5 啟動MySQL客戶端並連接MySQL服務 由於初始化時使用的【mysqld --initialize-insecure】命令,其預設未給root賬戶設置密碼 輸入回車,見下圖表示安裝成功: 1.6 添加環 ...
  • 上周,以前公司的同事朋友找我幫忙,看看能否幫忙恢復一個MySQL 資料庫,具體情況為:資料庫版本為MySQL 5.6(具體版本不清楚),也不清楚具體的資料庫引擎; 沒有資料庫備份,只剩下資料庫下麵的一些文件(frm、idb),具體原因是因為出現問題的時候,重裝了MySQL,最要命的是ibdata1等... ...
  • 主要是常用的hbase shell命令,包括表的創建與刪除,表數據的增刪查【hbase沒有修改】;以及hbase的導出與導入。 參考教程:HBase教程 參考博客:hbase shell基礎和常用命令詳解 參考博客:hbase shell常用命令和filter 參考博客:hbase導入導出數據 1. ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...