日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

mysql设置约束l命令_2、MYSQL 基本数据库命令及约束

發(fā)布時(shí)間:2023/11/27 生活经验 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql设置约束l命令_2、MYSQL 基本数据库命令及约束 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【注】sql語句注意不要忘了后面的? ?“? ; ”,表示結(jié)束符

1、如何登陸數(shù)據(jù)庫(kù)服務(wù)器

C:\Users\zhg>mysql -uroot -p

Enter password: ***********

2、如何查詢數(shù)據(jù)庫(kù)服務(wù)器中所有的數(shù)據(jù)庫(kù)

mysql> show databases;

3、如何選中一個(gè)數(shù)據(jù)庫(kù)

use +數(shù)據(jù)庫(kù)名;

4、在選中的基礎(chǔ)上查看數(shù)據(jù)庫(kù)中的數(shù)據(jù)表

show tables;

5、在上述基礎(chǔ)上查看一個(gè)表的字段

select * from + 表名;

6、退出數(shù)據(jù)庫(kù)服務(wù)器命令

exit;

7、如何在數(shù)據(jù)庫(kù)服務(wù)器中創(chuàng)建數(shù)據(jù)庫(kù),創(chuàng)建數(shù)據(jù)表(這里創(chuàng)建test數(shù)據(jù)庫(kù),創(chuàng)建pet數(shù)據(jù)表)

>create database test;? ? //創(chuàng)建數(shù)據(jù)庫(kù)

>show databases;? ? //查看數(shù)據(jù)庫(kù)是否創(chuàng)建成功

>use test;? ? //選中所要操作的數(shù)據(jù)庫(kù)

>CREATE VARCHAR pet(

name VARCHAR(20),

ower VARCHAR(20),

species VARCHAR(20),

sex CHAR(1),

birth DATE,

death DATE);? ? ? ? //創(chuàng)建數(shù)據(jù)表

>show tables;? ? //查看數(shù)據(jù)表是否創(chuàng)建成功

>describe pet;? ? ? ?//查看數(shù)據(jù)表的具體結(jié)構(gòu)

>drop table pet;? ? //刪除表

8、在表中添加記錄

>INSERT INTO pet

VALUES('kiki','zhang','hamster','f','2020-01-01',NULL)? ? //對(duì)應(yīng)上述創(chuàng)建的表的結(jié)構(gòu)來添加記錄值

9、查看表中的記錄

>select * from pet;

10、mysql常用數(shù)據(jù)類型

(1) 數(shù)值

(2)日期/時(shí)間

(3)字符串(字符)類型

【注】上述數(shù)據(jù)類型的選擇:

日期/時(shí)間:主要看格式

數(shù)值類型、字符串類型:主要看范圍,大小

11、刪除數(shù)據(jù)(這里刪除name為旺旺的記錄)

>delete from pet where name='旺旺'

12、修改數(shù)據(jù)(將owner 為zhang 的記錄的name改為旺旺)

>update pet set name='旺旺' where owner='zhang';

【總結(jié)】

SQL:Structure Query Language? ? 結(jié)構(gòu)化查詢語言

DDL:數(shù)據(jù)定義語言:定義數(shù)據(jù)庫(kù)、數(shù)據(jù)表的結(jié)構(gòu)(create(創(chuàng)建)、drop(刪除)、alter(修改))

DML:數(shù)據(jù)操縱語言:主要是用來操作數(shù)據(jù)(insert(插入)、update(修改)、delete(刪除))

DCL:數(shù)據(jù)控制語言:定義訪問權(quán)限,取消訪問權(quán)限,安全設(shè)置(grant)

DQL:數(shù)據(jù)查詢語言:select(查詢) from 子句,where 子句

13、mysql建表約束

(1)主鍵約束

【功能】它能夠唯一確定表中的一條記錄,也就是我們通過給某個(gè)字段添加一條約束,就可以使得該字段不重復(fù)也不為空。

【語句1】 創(chuàng)建一個(gè)新表名為user,給id添加主鍵約束,實(shí)現(xiàn)如下:

>????create table user(

id int primary key,

name varchar (20));

添加記錄:

>insert into user values (1,'張三');

>insert into user values (2,'李四');

【注】在這里id為主鍵,所以id只能添加唯一的數(shù)據(jù)(上述為1,2若同時(shí)添加為1,那么就會(huì)報(bào)錯(cuò))

【語句2】聯(lián)合主鍵,創(chuàng)建user2,給id與name同時(shí)添加主鍵,只要兩個(gè)中有一個(gè)不同就算唯一

>??create table user2(

id int,

name varchar(20),

primary key(id,name));

添加記錄:

>insert into user2 value (1,'張三');

>insert into user2 value (1,'張三');

【注】這里為聯(lián)合主鍵,雖然id一樣但是name也叫做唯一

【拓展】在創(chuàng)建表的時(shí)候,忘了添加主鍵約束:

——如何添加?add

【語句】創(chuàng)建表user4,后期再添加主鍵

> create table user4(

-> id int ,

-> name varchar(20));

//添加主鍵

>alter table user4 add primary key(id);

——如何刪除 drop

【語句】

>alter table user4 drop primary key;

——使用modify修改字段,添加約束

【語句】

>alter table user4 modify id int primary key;

(2)自增約束?auto_increment

【語句】創(chuàng)建表user3,同時(shí)給id添加主鍵約束與自增約束,在添加記錄時(shí),只需要添加name記錄,id就會(huì)實(shí)現(xiàn)自動(dòng)生成并隨著name 的添加而實(shí)現(xiàn)自增

>create table user3(

id int primary key auto_increment,

name varchar(20));

>insert into user3 (name) values('王五');

>insert into user3 (name) values('王五');

(3)唯一約束 unique

【語句】創(chuàng)建表user5,同時(shí)給name添加唯一約束

>create table user5(

-> id int,

-> name varchar(20));

>alter table user5 add unique(name);

//第二種方式

>create table user6(

-> id int,

-> name varchar(20),

-> unique(name));

//第三種方式

> create table user7(

-> id int,

-> name varchar(20) unique);

//聯(lián)合方式(與聯(lián)合主鍵一樣,兩者只要有一個(gè)不同就是唯一)

>create table user8(

-> id int,

-> name varchar(20),

-> unique(id,name));

——?jiǎng)h除user7中的唯一約束

>alter table user7 drop index name;

—— 修改唯一約束

> alter table user7 modify name varchar(20) unique;

對(duì)唯一性的驗(yàn)證可自行驗(yàn)證哦

(4)非空約束?not null

【語句】創(chuàng)建user9,添加非空約束

>create table user9(

-> id int,

-> name varchar(20) not null);

【驗(yàn)證】

> insert into user9 (id) value (1);? ? ? ? ? ? 只添加id的話,會(huì)報(bào)錯(cuò),因?yàn)閚ame不能非空

>insert into user9 value (1,'zhang');? ? ? ? ? ? 成功

——后期添加

>alter table user10 modify name varchar(20) not null;

——?jiǎng)h除

>alter table user10 modify name varchar(20) null;

(5)默認(rèn)約束

【語句】創(chuàng)建user10

> create table user10 (

-> id int,

-> name varchar(20),

-> age int default 10);

或者后期再添加

——?jiǎng)h除

>alter table user10 alter age drop default;

——添加

>alter table user10 alter age set default 5;

(6)外鍵約束

【注】涉及兩個(gè)表之間的關(guān)聯(lián),主表--副表,父表--子表

【語句】創(chuàng)建兩個(gè)表classes,students

——classes表

> create table classes(

-> id int primary key,

-> name varchar(20));

——students表

> create table students(

-> id int,

-> name varchar(20),

-> class_id int,

-> foreign key(class_id) references classes(id));

添加記錄:

——添加班級(jí)

> insert into classes value(1,'一班');

> insert into classes value(2,'二班');

> insert into classes value(3,'三班');

——添加學(xué)生

>insert into students value(1,'張三',1);

>insert into students value(1,'張三',2);

>insert into students value(1,'張三',3);

所謂外鍵約束:

1、主表(父表)中沒有的數(shù)據(jù)在副表(子表)中是不可以使用的(這里對(duì)于學(xué)生的添加時(shí),所選班級(jí)會(huì)有限制,只能是1,2,3)

2、主表中的記錄被副表引用時(shí)是不可以被刪除的(這里的班級(jí)已經(jīng)都被副表引用,所以不可以刪除)

3、作為外鍵必須是唯一的字段才能做外鍵,即必須是主鍵才有資格稱為外鍵;

【總結(jié)】

添加約束

1、建表的時(shí)候就直接添加約束

2、alter .......add.......

3、alter.........modify.....

刪除約束

alter ........drop ......

【補(bǔ)充】

1、更改字段名(將con改為cno)

>alter table course change con cno varchar(20);

2、刪除字段(刪除名為cno的字段)

>alter table course drop column cno;

3、增加字段(只能默認(rèn)在后面添加字段,這里添加的是cno)

>alter table course add cno varchar(20);

4、調(diào)整字段的相對(duì)位置

(1)將cno放到tno前面

>alter table course modify tno varchar(20) after cno;

(2)將tno放到整個(gè)字段的最前面

>alter table course modify tno varchar(20) first;

關(guān)注個(gè)人公眾號(hào),有福利哦……

總結(jié)

以上是生活随笔為你收集整理的mysql设置约束l命令_2、MYSQL 基本数据库命令及约束的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。