使用SQL語句概述-DDL-數據類型
1.什么是SQL
SQL(Structured Query Language)是“結構化查詢語言”,它是對關系型數據庫的操作語言。
它可以應用到所有關系型數據庫中,
例如:MySQL、Oracle、SQL Server等。
SQ標準(ANSI/ISO)有:
- SQL-92:1992年發(fā)布的SQL語言標準;
- SQL:1999:1999年發(fā)布的SQL語言標簽;
- SQL:2003:2003年發(fā)布的SQL語言標簽;
這些標準就與JDK的版本一樣,在新的版本中總要有一些語法的變化。
不同時期的數據庫對不同標準做了實現。
雖然SQL可以用在所有關系型數據庫中,但很多數據庫還都有標準之后的一些語法,我們可以稱之為“方言”。
例如MySQL中的LIMIT語句就是MySQL獨有的方言,其它數據庫都不支持!
當然,Oracle或SQL Server都有自己的方言。
2.語法要求
- SQL語句可以單行或多行書寫,以分號結尾;
- 可以用空格和縮進來來增強語句的可讀性;
- 關鍵字不區(qū)別大小寫,建議使用大寫;
3.分類
- DDL(Data Definition Language):數據定義語言,用來定義數據庫對象:庫、表、列等;
- DML(Data Manipulation Language):數據操作語言,用來定義數據庫記錄(數據);
- DCL(Data Control Language):數據控制語言,用來定義訪問權限和安全級別;
- DQL(Data Query Language):數據查詢語言,用來查詢記錄(數據)。
4.DDL
基本操作
- 查看所有數據庫名稱:SHOW DATABASES;
- 切換數據庫:USE mydb1,切換到mydb1數據庫;
操作數據庫
- 創(chuàng)建數據庫:CREATE DATABASE [IF NOT EXISTS] mydb1;
- 創(chuàng)建數據庫,例如:CREATE DATABASE mydb1,創(chuàng)建一個名為mydb1的數據庫。如果這個數據已經存在,那么會報錯。例如CREATE DATABASE IF NOT EXISTS mydb1,在名為mydb1的數據庫不存在時創(chuàng)建該庫,這樣可以避免報錯。
- 刪除數據庫:DROP DATABASE [IF EXISTS] mydb1;
- 刪除數據庫,例如:DROP DATABASE mydb1,刪除名為mydb1的數據庫。如果這個數據庫不存在,那么會報錯。DROP DATABASE IF EXISTS mydb1,就算mydb1不存在,也不會的報錯。
- 修改數據庫編碼:ALTER DATABASE mydb1 CHARACTER SET utf8
- 修改數據庫mydb1的編碼為utf8。注意,在MySQL中所有的UTF-8編碼都不能使用中間的“-”,即UTF-8要書寫為UTF8。
查看mysql的編碼:show variables
like
'character_set_database'
5.數據類型
MySQL與Java一樣,也有數據類型。MySQL中數據類型主要應用在列上。
常用類型:
- int:整型 如果字段是int類型 那么不需要指定長度 如果是自增的字段一定要是int類型
- double:浮點型,例如double(5,2)表示最多5位,其中必須有2位小數,即最大值為999.99;
- decimal:泛型型,在表單錢方面使用該類型,因為不會出現精度缺失問題;decimal(5,2)
- char:固定長度字符串類型; char(10)
- varchar:可變長度字符串類型; varchar(10)
- text:字符串類型;String
- blob:字節(jié)類型;
- date:日期類型,格式為:yyyy-MM-dd;
- time:時間類型,格式為:hh:mm:ss
- timestamp:時間戳類型;
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
windows下修改Mysql5.7.11初始密碼的圖文教程
這篇文章主要介紹了windows下修改Mysql5.7.11初始密碼的圖文教程,本文給大家介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下2016-11-11MySQL5.1主從同步出現Relay log read failure錯誤解決方法
這篇文章主要介紹了MySQL5.1主從同步出現Relay log read failure錯誤解決方法,需要的朋友可以參考下2014-07-07