mysql表的管理與操作

2021-09-23 01:53:24 字數 4084 閱讀 1971

1、建立表(指定字符集)

create table 表名(

欄位名 資料型別,

欄位名 資料型別,

...欄位名 資料型別

) [character set utf8];

2、檢視已有表的字符集

show create table 表名;

show tables; 檢視庫擁有的表

3、檢視表結構

desc 表名; (以類似excel格式)

4、刪除表

drop table 表名;

注意:

(1)所有的資料都是以檔案的形式存放在資料庫目錄下

(2)ubuntu資料目錄:/var /lib /mysql /

1 插入(insert)

1、insert into 表名 values(值1),(值2),(值3),(值4),..;

2、指定插入的字段,未插入欄位為null

insert into 表名(欄位1,...) values(值1),...;

2 查詢(select)

1、檢視滿足條件的所有字段

select * from 表名 [where 條件];

2、檢視滿足條件的指定字段

select 欄位名1,欄位名2 from 表名 [where 條件]

1、檢視所有的庫

show databases;

2、建立新庫 studb

create database studb;

use studb;

3、在studb中建立表tab1 指定字符集utf8,欄位名有id、name、age

create table tab1(id int,

name char(20),

age int) character set utf8;

4、檢視tab1的表結構

desc tab1;

5、在tab1中隨便插入2條記錄

insert into tab1 values(0,"jordan",31),

(1,"lebron",19),(2,"kobe",21);

6、在tab1中的name、age兩個字段插入2條記錄

insert into tab1(name,age) values("kyli",16),

("stephen",16);

7、檢視tab1中的所有記錄

select * from tab1;

8、檢視tab1表中所有人的姓名和年齡

select name,age from tab1;

9、檢視tab1表中年齡大於20的資訊

select * from tab1 where age > 20;

1、方法(通過更改mysql配置檔案)

2、步驟:

1、獲取root許可權

su2、找到配置檔案的目錄

cd /etc/mysql/mysql.conf.d/

3、備份

cp mysqld.conf mysqld.cnf.bak

4、修改配置

subl mysqld.cnf

character_set_server = utf8

5、重啟mysql服務

service mysql restart

或者:/etc/init.q/mysql restart

問題:客戶端把資料儲存到資料庫伺服器上的過程

1、連線到資料服務庫

mysql -u root -p

2、選擇乙個庫

use 庫名

3、建立表/修改表

update 表名....

4、斷開與資料庫連線

exit;|quit;|\q;

1、語法:alter table 表名 執行動作;

2、新增字段

alter table 表名 add 欄位名 資料型別 [first];

alter table 表名 add 欄位名 資料型別 [after 欄位名];

(預設新增到最後)

3、刪除欄位drop

alter table 表名 drop 欄位名;

4、修改資料型別modify

alter table 表名 modify 欄位名 新資料型別;

5、表重新命名rename

alter table 表名 rename 新錶名;

6、表字段的重新命名change

alter table 表名 change 舊欄位名 新欄位名 資料型別;

create database studb2;

use studb2

create table t1(name char(15),

age tinyint unsigned,

phnumber char(11)

) character set utf8;

desc t1;

alter table t1 add id bigint first;

alter table t1 modify phnumber bigint;

alter table t1 add address char(15);

alter table t1 drop age;

desc t1;

1、刪除表記錄

1、delelte from 表名 where 條件;

eg:delete from hero where name = "魏延";

2、注意

delete語句後如果不加where條件,所有記錄全部清空

2、更新表記錄

1、update 表名 set 欄位1=值1,欄位2=值2,...where 條件;

update hero set name='司馬懿',id = 8

where name = '曹操';

2、注意

update set語句不加where語句會將字段值全部設定

select * from hero where country = "蜀國";

select name,***,country from hero where *** = "女";

update hero set name="典韋",***="男",country="魏國"

where id = 2;

delete from hero where country = "蜀國";

update hero set country = "魏國" where name ="貂蟬";

delete from hero;

1、語法

create table 表名 select ... from 表名 where 條件;

2、示例

1、複製moshou.sanguo表的全部記錄和字段,sanguo2

create table sanguo2

select * from moshou.sanguo;

2、複製moshou.sanguo表的前三條記錄,sanguo3

create table sanguo3

select * from moshou.sanguo

limit 3;

3、複製moshou.sanguo表的id,name,country,前5條記錄sanguo4

create table sanguo3

select id,name,country from moshou.sanguo

limit 5;

3、複製表結構

create table 表名 select * from 表名 where false;

1、示例,moshou.sanguo複製到sanguo5

create table sanguo5

select * from moshou.sanguo where false;

4、注意

複製表的時候不會把原表的鍵(key)屬性複製過來

表的管理與操作

表的構成 列 column 主鍵 pk 外來鍵 fk 約束 check 觸發器 trigger 索引 index 表概念概 念 模 型 關 系 模 型 sql server 某些dbms 實體集 聯絡集 entity set relationship set 關係 relation 表 table ...

mysql表的操作與查詢

建表 sql create table lo article id int not null auto increment,title varchar 100 not null,author varchar 40 not null,create date date primary key id en...

mysql 表的操作 mysql 表的操作

建立表 檢視表結構 修改表 刪除表 1.建立表 建立表之前選定資料庫 use testx create table table2 屬性名 資料型別 約束 屬性名 資料型別 約束 約束 primary key 該屬性 欄位設為此表主鍵 foreign key 該屬性 欄位為該表外來鍵,即另乙個表的主鍵...