初始SQL語句 簡單使用

来源:https://www.cnblogs.com/guokaifeng/archive/2019/07/06/11144060.html
-Advertisement-
Play Games

初始SQL語句 簡單使用 SQL語言共分為四大類: DQL (Data QueryLanguage )數據查詢語言 DML(Data manipulation language)數據操縱語言 DDL(Data definition language)資料庫定義語言 DCL(Data Control ...


初始SQL語句 簡單使用

  • SQL語言共分為四大類:

    • DQL (Data QueryLanguage )數據查詢語言
    • DML(Data manipulation language)數據操縱語言
    • DDL(Data definition language)資料庫定義語言
    • DCL(Data Control Language)資料庫控制語言
#DDL資料庫定義語言 創建庫、創建表  
#DML資料庫操縱語句存數據,刪除數據,修改數據,查看  
#DCL控制許可權  # grant/revoke  
# 庫
    # create database 資料庫名;  # 創建庫
    # show databases; # 查看當前有多少個資料庫
    # select database();# 查看當前使用的資料庫
    # use 資料庫的名字; # 切換到這個資料庫(文件夾)下
# 表操作
    # 查看當前文件夾中有多少張表
        # show tables;
    # 創建表
        # create table student(id int,name char(4));
    # 刪除表
        # drop table student;
    # 查看表結構
        # desc 表名;
# 操作表中的數據
    # 數據的增加
        # insert into student values (1,'gkf');
        # insert into student values (2,'gandan'); 
        # insert into userinfo values (1,'gkf','gkf318'),(2,'gandan','6666'),(3,'goudan','9999');多行添加
    # 數據的查看
        # select * from student;
    # 修改數據
        # update 表 set 欄位名=值
        # update student set name = 'goudan';
        # update student set name = 'gandan' where id=2;
    # 刪除數據
        # delete from 表名字;
        # delete from student where id=1;
  • 初識sql語句 ; 代表一個語句的結束

#進入mysql客戶端
$mysql
mysql> select user();  #查看當前用戶
mysql> exit (回車)    # 也可以用\q quit退出

# 預設用戶登陸之後並沒有實際操作的許可權
# 需要使用管理員root用戶登陸
$ mysql -uroot -p   # mysql5.6預設是沒有密碼的
#遇到password直接按回車鍵
mysql> set password = password('root'); # 給當前資料庫設置密碼

# 創建賬號
mysql> create user 'gkf'@'192.168.10.%'   IDENTIFIED BY '123';# 指示網段可以連接
mysql> create user 'gkf'@'192.168.10.5'   # 指示某機器可以連接
mysql> create user 'gkf'@'%'                    #指示所有機器都可以連接  
mysql> show grants for 'eva'@'192.168.10.5';查看某個用戶的許可權 
# 遠程登陸
$ mysql -uroot -p123 -h 192.168.10.3

# 給賬號授權
mysql> grant all on *.* to 'gkf'@'%';
mysql> flush privileges;    # 刷新使授權立即生效

# 創建賬號並授權
mysql> grant all on *.* to 'gkf'@'%' identified by '123' 

# 查看表的欄位基礎信息: desc 表名; 或 describe 表名;
# 查看編碼相關: show variables like '%chara%';
# 查看所有表:  show tables;  
# 創建表: create table 表名 (id int,name char(4));
# 查看表結構:  show create table 表名;#(\G可以格式化顯示)
# 查詢當前資料庫支持的存儲引擎: mysql> show engines \G; #(\G格式化的意思) 
# 查看當前的預設存儲引擎:  show variables like '%engine%'; #(%代表其他內容)
# 創建表並且指定引擎: create table t3 (id int,name char(4)) engine=memory; #(engine = "指定引擎")
  • 簡單的增刪改查

1. 操作文件夾(庫)
   增:create database db1 charset utf8;
   查:show databases;
   改:alter database db1 charset latin1;
   刪除: drop database db1;

2. 操作文件(表)
   先切換到文件夾下:use db1
   增:create table t1(id int,name char);
   查:show tables;
   改:alter table t1 modify name char(3);
      alter table t1 change name name1 char(2);
   刪:drop table t1;    

3. 操作文件中的內容(記錄)
   增:insert into t1 values(1,'egon1'),(2,'egon2'),(3,'egon3');
   查:select * from t1;
   改:update t1 set name='sb' where id=2;
   刪:delete from t1 where id=1;

   清空表:
       delete from t1; #如果有自增id,新增的數據,仍然是以刪除前的最後一樣作為起始。
       truncate table t1;數據量大,刪除速度比上一條快,且直接從零開始,

*auto_increment 表示:自增
*primary key 表示:約束(不能重覆且不能為空);加速查找

數據操作 增 刪 改 查

  • 增加 insert

  • insert into 表名 values (數據1...),(數據2...)
    • 所有的在這個表中的欄位都需要按照順序被填寫在這裡
  • insert into 表名(欄位名,欄位名...) values (值1,值2),(值1,值2);
    • 所有在欄位位置填寫了名字的欄位和後面的值必須是一一對應
  • insert into 表名(欄位名,欄位名...) values (值....),(值....),(值....)
    • 所有在欄位位置填寫了名字的欄位和後面的值必須是一一對應
  • value單數與values複數 ,一次性寫入一行數據,一次性寫入多行數據, 一般全用 values
  • 示列
表 id,name,age
insert into t1 value (1,'gkf',23)

insert into t1 values (1,'gkf',23),(2,'gandan',17)

insert into t1(name,age) value ('gkf',23)

insert into t1(name,age) values ('gkf',23),('gandan',17)

#第一個角度
    寫入一行內容還是寫入多行
    insert into 表名 values (值....)
    insert into 表名 values (值....),(值....),(值....)
    
#第二個角度
    是把這一行所有的內容都寫入
    insert into 表名 values (值....)
    指定欄位寫入
    insert into 表名(欄位1,欄位2) values (值1,值2)
  • 刪除 delete

  • delete from 表 where 條件;
  • 更新 update

  • update 表 set 欄位=新的值 where 條件;
  • 查詢 select語句

  • select * from 表
  • select 欄位,欄位.. from 表
  • select distinct 欄位,欄位.. from 表 # 按照查出來的欄位去重
  • select 欄位*5 from 表 # 欄位數字值 四則運算 顯示運算完的結果
  • select 欄位 as 新名字,欄位 as 新名字 from 表 # 給查出欄位取名字
  • select 欄位 新名字 from 表 # 給查出欄位取名字

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

-Advertisement-
Play Games
更多相關文章
  • 繼續Linux命令學習,沒有什麼捷徑,每個命令都去敲幾遍就熟悉了,第二篇學習的是一些比較實用類的命令,主要是從開發的角度進行學習,並不深入,話不多說,開始! 一、系統管理類 1.1 stat --stat 顯示指定文件的相關信息,比ls命令顯示內容更多 1.2 who --顯示線上登錄用戶 1.3 ...
  • 《SQL Server溫故系列》,sql,crud。毋庸置疑,開發者最常用的資料庫技術就是 SQL 了,即便是 ORM 大行其道的今天也常常需要寫 SQL 語句。而 SQL 語句中最常用的就是增刪改查了,本系列就先對增刪改查語句來個系統的回顧吧! ...
  • 《SQL Server溫故系列》,sqlserver教程,tsql教程,sql教程,SQL Server 系列博客導航目錄 ...
  • python用於操作數據的pymysql模塊,及相關的視圖,觸發器,函數,存儲過程,事務,SQL註入等相關拓展。 ...
  • Oracle異常處理在PL/SQL語句書寫時,需要處理的異常-- 不做異常處理時DECLARE v_name emp.ename%TYPE; v_sal emp.sal%TYPE;BEGIN SELECT ename,sal INTO v_name,v_sal FROM emp WHERE empn ...
  • 資料庫之MySQL與Python交互,內容包括 準備數據,SQL演練,資料庫的設計,Python 中操作 MySQL 步驟,pymysql增刪改查,參數化。 ...
  • [TOC] 資料庫的存儲引擎 什麼是存儲引擎? MySQL中的數據用各種不同的技術存儲在文件(或者記憶體)中。這些技術中的每一種技術都使用不同的存儲機制、 索引技巧、鎖定水平並且最終提供廣泛的不同的功能和能力。通過選擇不同的技術,你能夠獲得額外的速度或者功能, 從而改善你的應用的整體功能。在MySQL ...
  • 資料庫之MySQL查詢,內容包括 查詢,條件查詢,排序,聚合函數,分組,分頁,鏈接查詢,自關聯,子查詢,總結。 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...