mysql 即學a又學b_MySQL學習第一天

一、 數據庫:

*學習重點:創建數據庫/向表添加記錄/查詢記錄

數據庫概念:文件系統(存儲和管理)

數據庫軟件介紹:Oracle/MySQL/SQL server…

分類:

關系型數據庫:關系模型組織數據

非關系型數據庫:鍵值對關系存儲

二、 mysql數據的存儲方式:

一臺數據庫服務器中會創建很多個數據庫(一個項目會創建一個數據庫)

在數據庫中會創建很多張表(一個實體會創建一個表)

在表中會有很多記錄(一個對象的實例會添加一條新的記錄)

三、 數據庫中表和Java中類的對應關系:

數據庫中以表的方式存儲數據,類似于Java中的類,每個字段會有相應的數據類型;

表名 – Java類

表中的字段 – 類中的屬性

表中的記錄 – 類創建的對象

瀏覽器 — Web服務器 — 數據庫服務器

用戶 項目

四、 SQL: (結構化查詢語言:Structure Query Language)

1)概述:定義了操作所有關系型數據庫的規則;

2)SQL通用語法:

1.語句以分號結尾

2.空格和TAB增加可讀性

3.不區分大小寫,關鍵字用大小寫

4.三種注釋; a. -- (通用) b. # (mysql特有) c. /* */

3)SQL分類: (了解)

DDL(Database Definition Language): 操作數據庫/表

DML(Database Manipulation Language): 增刪改表中的數據

**DQL(Database Query Language):查詢表中的數據

DCL(Database Control Language): 授權

五、 DDL: (Definition)操作數據庫/表

1) 操作數據庫 (CRUD)

1. Create:創建

create database 庫名; 創建數據庫

create database 庫名; 創建數據庫

create database if not exists 庫名;

create database 庫名 character set 字符集名;

create database if not exists 庫名 character set 字符集名;

2. Retrieve:查詢

show databases; 查看所有數據庫;

show create database 庫名;查看指定數據庫的字符集(創建語句)

3. Update:修改

alter database 庫名 character set 字符集名;

4. Delete:刪除 (慎用)

drop database 庫名;

drop database if exists 庫名;

5. 使用數據庫

use 庫名; (不加database)

select database();?查看正在使用的數據庫;

2) 操作表 (CRUD)

1. Create:創建

create table 表名 (列名1 數據類型1, 列名2 數據類型2…);

注意: 1.加() 2.最后一列不要逗號

常見數據類型:

數值類型:

int: 整數 eg: age int;

double(m,n):小數

eg:score double(5,2);五位小數,保留兩位;

字符串類型 :

varchar(len):字符串(長度可變) 格式:varchar(字符串長度)

char:字符串(長度固定)

示例: zhangsan 8個字符 張三 2個字符

日期類:

time(HH-mm-ss):時間

date: 日期 格式: yyyy-MM-dd eg:19960227 /1996-02-27

datetime:日期

格式: yyyy-MM-dd HH:mm:ss eg:19960227052013

注意: 如果沒有存值,則默認為 Null

timestamp:時間戳 (stamp郵票)

注意: 沒有存值,默認系統時間;

//示例:

create table student(

id int,

name varchar(30),

score double(5,2),

birthday date(yyyy-MM-dd),

insert_time timestamp

)

2. Retrieve:查詢

show tables; – 查詢所有的表; (并沒有show table 表名;語句)

show create table 表名; – 查看創建表的詳細信息

describe 表名;–查詢表結構;

3. Update:修改 (八太重要)

a) 修改表名

alter table 表名rename to 新表名; – 修改表名

alter table 表名 character set 字符集名;–修改表的字符集

b) 添加一列:

alter table表名 add 列名 數據類型; – 添加新字段

c) 修改列的名稱/類型

alter table 表名 change 列名 新列名 新數據類型;–修改指定的字段

alter table 表名 modify 列名 新數據類型;–修改字段的數據類型

d) 刪除列

alter table 表名 drop 列名; 刪除表的字段

4. Delete:刪除表

drop table 表名;

drop table if exists 表名;

六、 DML: (Manipulation)增刪改表中數據

添加數據:

insert into 表名 (列名1,列名2…) value (值1,值2…);

insert into 表名 value (值1,值2…); – 給所有列添加數據

注意:

1.列名和值要一一對應

2.如果不定義列名,默認給所有列添加值,寫的時候就要寫全,不然報錯;

問題:

在命令窗口添加中文數據時,會報錯;編碼問題;

SHOW VARIABLES LIKE ‘%character_set_%’;模糊查詢變量字符串的設置

刪除數據:

delete from 表名 where 條件; ?按條件刪除數據

注意:不加條件,刪除所有記錄; (慎用) 有多少條記錄就會執行多少次操作;

truncate table 表名; (推薦效率高) – 刪除表,再創建一樣的新表;

truncate :vt. 把…截短;縮短;使成平面

修改數據:

update 表名 set 列名1 = 值1, 列名2 = 值2… where 條件;

注意:不加條件,默認修改所有的記錄;

七、 DQL: (Query)查詢表中的記錄

1. 語法

select

字段列表

from

表名列表

where

條件列表

group by

分組字段

having

分組之后的條件限定

order by

排序

limit 分頁限定

2. 基礎查詢

多個字段的查詢:

select 列名1,列名2...from 表名; 查詢

select * from 表名; 查詢表中所有數據

去重:

select distinct address from student;

計算列:

select 列名1 + 列名2 from student;

注意:如果有null值參與的運算,結果都是null;

解決:select 列名1 + ifnull(列名2, 0) from student;

ifnull(表達式1,表達式2);

表達式1:那個字段需要判斷是否為null;

表達式2:如果是null,則賦值為表達式2;

起別名:

select 列名 as 新列名 from student; -- as可以省略

3. 條件查詢 ( where )

1.格式: where子句后跟條件

2.運算符:

比較運算:

< > <= >= = !=

between 數值1 and 數值2; -- 在..和..之間

in(數值1,數值2...); -- 在..中

is null /is not null ; -- 是否為null

eg: select name,math from student where math is null;

邏輯運算:

且: && / and 或: || /or 非: !

4. 模糊查詢: (like)

占位符:

_ :單個任意字符

% :多個任意字符

eg:

select *from student where name like '馬%'; -- 第一個字為馬的人

select *from student where name like '_馬%'; -- 第二個字為馬的人

select *from student where name like '___'; -- 名字為三個字的人

select *from student where name like '%橋%'; -- 名字中有橋的人

SELECT *FROM student WHERE NAME LIKE '柳_'; -- 名字為兩個且姓柳

因為本人剛開始寫博客,時間有限,沒有編輯文本.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/457217.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/457217.shtml
英文地址,請注明出處:http://en.pswp.cn/news/457217.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Intellij IDEA 快捷鍵(Mac)

編輯 格式化代碼 AltCommandL 大小寫切換 ShiftCommandU 包圍 AltCommandT 選中代碼抽取方法 AltCommandM 調試/運行查看 類關系視圖 CommandAltU 查看所有的 TODO Command6 查詢方法調用處 AltF7 搜索其它 隱藏 Intellij IDEA CommandH 自動提醒 Alt/(這是我自己設置的)…

Spark RDD算子介紹

Spark學習筆記總結 01. Spark基礎 1. 介紹 Spark可以用于批處理、交互式查詢&#xff08;Spark SQL&#xff09;、實時流處理&#xff08;Spark Streaming&#xff09;、機器學習&#xff08;Spark MLlib&#xff09;和圖計算&#xff08;GraphX&#xff09;。 Spark是MapReduc…

java 寫tb級文件_三管齊下!TB 級文件的上傳性能瞬間被優化 100 倍!

作者 | 中華石杉責編 | 伍杏玲本文經授權轉載石杉的架構筆記(ID&#xff1a;shishan100)這篇文章我們來看看&#xff0c;世界上最優秀的分布式文件系統HDFS&#xff0c;是如何對超大文件的上傳做性能優化的&#xff1f;首先&#xff0c;我們還是通過一張圖來看一下文件上傳的大…

CentOS7下安裝Redis — 單節點

2019獨角獸企業重金招聘Python工程師標準>>> 1. 環境準備 安裝編譯所需要的包&#xff1a; yum install gcc tcl 2. 下載redis http://download.redis.io/releases/redis-3.2.7.tar.gz 3. 安裝redis ## 創建redis的安裝目錄 mkdir /usr/local/redis## 解壓redis tar…

筆記本中美化代碼的方法

這里向大家推薦一個很好用的記筆記軟件,微軟的OneNote,這個筆記軟件,支持分區和分區組的創建,而且入門簡單,界面簡潔,很適合從word過渡過來的人來記筆記! 不過如果直接記筆記,對于程序員來說,可能希望代碼在筆記本上更好看一些,那么應該怎么辦呢?下面提供了在OneNote中,讓代碼…

工具使用——印象(匯總)

作者&#xff1a;桂。 時間&#xff1a;2017-02-09 23:11:30 鏈接&#xff1a;http://www.cnblogs.com/xingshansi/articles/6384097.html 說明&#xff1a;轉載請注明出處&#xff0c;謝謝。 前言 本文僅僅介紹印象筆記的使用&#xff0c;至于挖掘機哪家強&#xff0c;本文不…

java final修飾屬性_Java final關鍵字用來修飾類、方法、屬性

1.final修飾類&#xff1a;這個類不能被繼承。如&#xff1a;String類、StringBuffer類、System類。2.final修飾方法&#xff1a;不能被重寫。如&#xff1a;Object類的getClass()方法。3.final修飾屬性&#xff1a;此屬性就是一個常量&#xff0c;一旦初始化就不可再被賦值。習…

SQL SERVER 數據導出JSON

執行下面的存儲過程&#xff1a; SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE PROCEDURE[dbo].[SerializeJSON](ParameterSQL AS VARCHAR(MAX))ASBEGINDECLARE SQL NVARCHAR(MAX)DECLARE XMLString VARCHAR(MAX)DECLARE XML XMLDECLARE Paramlist NVARCHAR(1000)SET …

JSP+Javabean+Servlet實現用戶注冊

在entity包下新建javabean 也就是實體類User 注意id用 Integer 而不用 int&#xff0c; 因為 int 自動初始化為0 public class User { private Integer id; private String username; private String password; 后面是set和get方法... 在Servlet包下創建servlet 右擊Servlet…

main的方法是Java_Java中的main()方法

在Java中&#xff0c;main()方法是Java應用程序的入口方法&#xff0c;也就是說&#xff0c;程序在運行的時候&#xff0c;第一個執行的方法就是main()方法&#xff0c;這個方法和其他的方法有很大的不同&#xff0c;比如方法的名字必須是main&#xff0c;方法必須是public sta…

深入理解Python的logging模塊:從基礎到高級

在Python編程中&#xff0c;日志記錄是一種重要的調試和錯誤追蹤工具。Python的logging模塊提供了一種靈活的框架&#xff0c;用于發出日志消息&#xff0c;這些消息可以被發送到各種輸出源&#xff0c;如控制臺、文件、HTTP GET/POST位置等。本文將深入探討Python的logging模塊…

http請求連接

1、在Info.plist中添加NSAppTransportSecurity類型Dictionary。2、在NSAppTransportSecurity下添加NSAllowsArbitraryLoads類型Boolean,值設為YES轉載于:https://www.cnblogs.com/liuting-1204/p/5919233.html

數據庫不完全恢復 以及恢復到測試環境:

sample 1: 1.清空歸檔日志 RMAN> crosscheck archivelog all; RMAN> delete achivelog all; 2.清空數據文件。 select name from v$datafile; rm v$datafile 3.恢復數據 ##check file date: ##把db數據恢復到&#xff1a;2017-02-05 00:00:00 ls -lt /ngenprdblog/ ls…

centos7安裝java6_CentOS7.6安裝jdk1.8

2、登錄Linux服務器&#xff0c;通過rz命令將jdk導入服務器如果沒有rz命令 需要先安裝lrzszyum install lrzsz -y3、將jdk壓縮包解壓到指定路徑 -C 指定路徑4、配置環境變量編輯/etc/profile文件 在末尾加上以下內容 wq保存退出source /etc/profile文件 使配置文件生效export J…

ubuntu安裝wkhtmltopdf

下載安裝wkhtmltox系統環境 http://wkhtmltopdf.org/downloads.html wget https://bitbucket.org/wkhtmltopdf/wkhtmltopdf/downloads/wkhtmltox-0.13.0-alpha-7b36694_linux-precise-amd64.deb dpkg -i 安裝包名字 當我把它生成pdf的時候我想讓每個塊都是一頁&#xff0c;經過…

人生苦短,我用python——當我在玩python的時候我玩些什么 -

程序的基本思路 用一個txt文件記錄電腦的一天內累計使用時間累計使用時間超過若干小時就會自動關機程序開機自動運行 為什么我最后選擇了python 想著怎么寫、搜資料的時候就發現Java并不適合&#xff0c;雖然不是不能實現&#xff0c;但有好幾個問題解決起來都有點麻煩。對我這…

IO流的練習5 —— 讀取文件中的字符串,排序后寫入另一文件中

需求&#xff1a;已知s.txt文件中有這樣的一個字符串&#xff1a;“hcexfgijkamdnoqrzstuvwybpl”     請編寫程序讀取數據內容&#xff0c;把數據排序后寫入ss.txt中。分析&#xff1a;   A&#xff1a;讀取文件中的數據   B&#xff1a;把數據存在一個字符串中   C…

java解析未知key json_Gson解析JSON中動態未知字段key的方法

前面一篇文章我介紹了Gson的解析的基本方法。但我們在享受Gson解析的高度封裝帶來的便利時&#xff0c;有時可能會遇到一些特殊情況&#xff0c;比如json數據中的字段key是動態可變的時候&#xff0c;由于Gson是使用靜態注解的方式來設置實體對象的&#xff0c;因此我們很難直接…

Twisted入門教程(5)

2019獨角獸企業重金招聘Python工程師標準>>> 第五部分&#xff1a;由Twited支持的詩歌下載服務客戶端 你可以從這里從頭開始閱讀這個系列 抽象地構建客戶端 在第四部分中&#xff0c;我們構建了第一個使用Twisted的客戶端。它確實能很好地工作&#xff0c;但仍有提高…

Jquery 學習之基礎一

1.添加一個CSS類 $("button").click(function(){ $("#div1").addClass("important blue");}); 2.移除一個類 $("button").click(function(){ $("h1,h2,p").removeClass("blue");}); 3.切換類 $("button&…