1.SQL對數據庫進行操作:
創建數據庫:
語法: create database 數據庫名稱 [character set 字符集 collate 字符集校對規則];字符集校對規則即所用字符集的數據庫中的數據值是否區分大小寫、排列順序等規則。
查看數據庫:
查看數據庫服務器中所有的數據庫:show databases;
查看某個數據庫的定義信息:show create database 數據庫名稱;
修改數據庫:
語法:alter database 數據庫名稱 character set 字符集 collate 校對規則;
刪除數據庫:
語法名稱:drop database 數據庫名稱;
切換數據庫
語法: use 數據庫名稱;
查看當前正在使用的數據庫
語法:select database();
2.對數據庫的表進行操作
SQL創建表:
語法:create table 表的名稱(字段的名稱 字段類型(長度)約束,字段的名稱 字段類型(長度)約束);
字段的類型(一個實體對應一個表,一個實體的屬性對應一個表的字段。)
java中的類型 MySQL中的類型
byte/short/int/long tinyint/smallint/int/bigint
float float
double double
boolean bit
char/String char和varchar
Date date/time/datetime/timestamp
日期/時間/日期和時間/日期和時間
File BLOB/TEXT (BLOB二進制類型的文件,TEXT是文本類型的文件)
char和varchar的區別:char代表的是固定長度的字符或字符串,如char(8),向這個字段存入hello,數據庫會使用三個空格將其補全,像hello world這種超過會報錯。varchar代表可變長度的字符串,如varchar(8),存入hello,存入到數據庫的就是hello。
datatime與timestamp的區別:datatime就是既有日期又有時間的日期類型,如果沒有向這個字段中存值,數據庫使用null存入到數據庫中。timestamp也是既有日期又有時間的日期類型,如果沒有向這個字段中存值,數據庫會使用當前的系統時間存入到數據庫中。
約束(約束的作用:保證數據的完整性)
單表約束的分類:
主鍵約束:(用於唯一地標識表中的每一條記錄,可以定義一列或多列為主鍵。)primary key(主鍵約束默認就是唯一非空的)
唯一約束:(該字段值不可重復 )unique
非空約束:(可以重復,但不可以為空)not null
auto_increment是自動增加。
SQL查看表
查看某個數據庫下所有的表
語法:show tables
查看某個表的結構信息
語法:desc 表名;
刪除表:
語法:drop table 表名;
修改表:
添加列:alter table 表名 add 列名 類型(長度) 約束;
修改列的類型,長度和約束:alter table 表名 modify 列名 類型(長度) 約束;
刪除列:alter table 表名 drop 列名;
修改列名稱:alter table 表名 change 舊列名 新列名 類型(長度) 約束;
修改表名:rename table 表名 to 新的表名;
修改表的字符集:alter table 表名 character set 字符集;