那B表里面就留下姓名,學(xué)號(hào),性別中的一個(gè)字段參照A表就行了啊,建議用學(xué)號(hào),比如叫xuehao:
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供五常網(wǎng)站建設(shè)、五常做網(wǎng)站、五常網(wǎng)站設(shè)計(jì)、五常網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、五常企業(yè)網(wǎng)站模板建站服務(wù),十載五常做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
create table b(xuehao int(11),……其它字段……,foreign key(xuehao) references a(xuehao))
left
jion
left
out
jion
---左外連接
顯示出左邊表的全部數(shù)據(jù)和左邊和右邊相同的數(shù)據(jù)
select
table_3.a,table_3.b,table_6.a,table_6.c
from
table_3
left
outer
join
table_6
on
table_3.a=table_6.a
----右外連接
顯示出右邊表的全部數(shù)據(jù)和左邊和右邊相同的數(shù)據(jù)
select
table_3.a,table_3.b,table_6.a,table_6.c
from
table_3
right
outer
join
table_6
on
table_3.a=table_6.a
---全外連接
顯示出所有的數(shù)據(jù)
select
table_3.a,table_3.b,table_6.a,table_6.c
from
table_3
full
outer
join
table_6
on
table_3.a=table_6.a
create table course1 as
select * from course
不知道 mysql支持不支持這種寫法
可以的, 下面是一個(gè)例子.
CREATE TABLE DEPT (
id INT PRIMARY KEY,
name varchar(10),
pid INT
) ENGINE=InnoDB ;
ALTER TABLE DEPT
ADD CONSTRAINT DEPT_cons
FOREIGN KEY (pid)
REFERENCES DEPT(id);
下面是插入數(shù)據(jù)的結(jié)果.
mysql INSERT INTO DEPT VALUES(1, '總公司', NULL);
Query OK, 1 row affected (0.04 sec)
mysql INSERT INTO DEPT VALUES(2, '分公司', 1);
Query OK, 1 row affected (0.11 sec)
mysql INSERT INTO DEPT VALUES(3, '辦事處', 2);
Query OK, 1 row affected (0.08 sec)
mysql
mysql INSERT INTO DEPT VALUES(4, '非法數(shù)據(jù)', 5);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`test`.`dept`,
CONSTRAINT `DEPT_cons` FOREIGN KEY (`pid`) REFERENCES `dept` (`id`))
mysql
1、使用 create table 語(yǔ)句可完成對(duì)表的創(chuàng)建, create table 的創(chuàng)建形式:
create table 表名稱(列聲明);
以創(chuàng)建 people 表為例, 表中將存放 學(xué)號(hào)(id)、姓名(name)、性別(sex)、年齡(age) 這些內(nèi)容:
create table people(
id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
age tinyint unsigned not null
);
其中,auto_increment就可以使Int類型的id字段每次自增1。
2、向表中插入數(shù)據(jù)使用insert 語(yǔ)句。
insert 語(yǔ)句可以用來將一行或多行數(shù)據(jù)插到數(shù)據(jù)庫(kù)表中, 使用的一般形式如下:
insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...);
其中 [] 內(nèi)的內(nèi)容是可選的, 例如, 要給上步中創(chuàng)建的people 表插入一條記錄, 執(zhí)行語(yǔ)句:
insert into people(name,sex,age) values( "張三", "男", 21 );
3、想要查詢是否插入成功,可以通過select 查詢語(yǔ)句。形式如下:
select * from people;
擴(kuò)展資料:
當(dāng)mysql大批量插入數(shù)據(jù)的時(shí)候使用insert into就會(huì)變的非常慢,?mysql提高insert into 插入速度的方法有三種:
1、第一種插入提速方法:
如果數(shù)據(jù)庫(kù)中的數(shù)據(jù)已經(jīng)很多(幾百萬(wàn)條), 那么可以?加大mysql配置中的 bulk_insert_buffer_size,這個(gè)參數(shù)默認(rèn)為8M
舉例:bulk_insert_buffer_size=100M;
2、第二種mysql插入提速方法:
改寫所有 insert into 語(yǔ)句為?insert?delayed into
這個(gè)insert delayed不同之處在于:立即返回結(jié)果,后臺(tái)進(jìn)行處理插入。
3、第三個(gè)方法: 一次插入多條數(shù)據(jù):
insert中插入多條數(shù)據(jù),舉例:
insert into table values('11','11'),('22','22'),('33','33')...;