一、對資料庫的操作 1、創建一個庫 create database 庫名; 創建帶有編碼的:create database 庫名 character set 編碼; 查看編碼:show create database 庫名; 2、刪除一個庫 drop database 庫名; 3、使用庫 use 庫 ...
一、對資料庫的操作
1、創建一個庫
create database 庫名;
創建帶有編碼的:create database 庫名 character set 編碼;
查看編碼:show create database 庫名;
2、刪除一個庫
drop database 庫名;
3、使用庫
use 庫名;
4、查看當前正在操作的庫
select database();
二、對資料庫表的操作
1、創建一張表
create table 表名(
欄位名 類型(長度) [約束],
欄位名 類型(長度) [約束],
欄位名 類型(長度) [約束]
);
2、查看資料庫表
show tables;
查看表結構:desc 表名;
3、刪除一張表
drop table 表名;
4、修改表
1)添加一列
alter table 表名 add 欄位名 類型(長度) [約束];
eg. alter table user add uinfo varchar(32) not null;
2)修改列的類型(長度、約束)
alter table 表名 modify 要修改的欄位名 類型(長度) [約束];
eg. alter table user modify uinfo varchar(64) null;
3)修改列的列名
alter table 表名 change 舊列名 新列名 類型(長度) [約束];
4)刪除表的列
alter table 表名 drop 列名;
5)修改表名
rename table 表名 to 新表名
6)修改表的字元集
alter table 表名 character set 編碼;
查看當前表的編碼:show create table tbl_user;
三、對資料庫表記錄進行操作(修改)
1、插入記錄
1)insert into 表名(列名1,列名2,列名3......) value(值1,值2,值3......);
eg. insert into tbl_user(uid,uname,upassword) value(null,'zhangsan','123');
查看記錄:select * from 表名;
2)insert into 表名 value(值1,值2,值3......);
3)插入數據中文亂碼問題解決辦法
方式一:(不建議!)
直接修改資料庫安裝目錄裡面的my.ini文件第57行(在MySQL\MySQL Server 5.0目錄下,若MySQL安裝在C盤直接修改會拒絕訪問,這時可以把my.ini文件剪切到其他盤,修改完之後再複製過來)
default-character-set=utf8
想讓其生效,必須重新打開命令提示符,重啟mysql(先net stop mysql 然後net start mysql 再登錄)
方式二:
在命令提示符下輸入mysql>set names gbk;
2、修改表記錄
1)不帶條件的
update 表名 set 欄位名=值,欄位名=值,欄位名=值......
它會將該列的所有記錄都更改
2)帶條件
update 表名 set 欄位名=值,欄位名=值,欄位名=值......where 條件
3、刪除表記錄
1)帶條件的
delete from 表名 where 條件;
註意,若刪除uid=1的記錄,刪除後,uid不會重置
2)不帶條件的
刪除操作:delete from 表名;
3)面試題
delete與truncate的區別?
delete刪除的時候是一條一條的刪除記錄,它配合事務,可以將刪除的數據找回
truncate刪除,它是將整個表摧毀,然後再創建一張一模一樣的表。它刪除的數據無法找回
Delete操作演示:
Truncate操作演示:
註意:delete刪除,uid不會重置,而使用truncate操作,uid會重置(因為它刪除了表結構,然後再創建一張一模一樣的表,所以再次插入數據的數據的時候從1開始)