插入完整行
insert into customers
values('1000000006',
'toy land',
'123 any street',
'new york',
'ny',
'11111',
'usa',
null,
null);
一一對應的屬性
insert into customers(cust_id,
cust_name,
cust_city,
cust_address,
cust_state,
cust_zip,
cust_country,
cust_contact,
cust_email)
values('1000000006',
'toy land',
'123 any street',
'new york',
'ny',
'11111',
'usa',
null,
null);
插入部分行insert into customers(cust_id,
cust_name,
cust_city,
cust_address,
cust_state,
cust_zip,
cust_country)
values('1000000006',
'toy land',
'123 any street',
'new york',
'ny',
'11111',
'usa');
部分屬性允許為null,或給出預設值
插入檢索出的資料
insert select
語句
insert into customers(.....)
select ..... from custnew;
從乙個表複製到另乙個表create table custcopy as
select * from customers;
update customers
set cust_contact = 'sam roberts',
cust_email = '[email protected]'
where cust_id = '1000000006';
delete from customers
where cust_id = '1000000006';
如果update
和delete
不帶where
的話就是更改/刪除每一行
create table orders
(order_num integer not null,
order_date datetime not null,
cust_id char(10) not null
);
指定預設值
在後面加上default
create table orderitems
(order_num integer not null,
order_item integer not null,
prod_id char(10) not null,
quantity integer not null default 1,
item_price decimal(8, 2) not null
);
增加列alter table vendors
add vend_phone char(20);
刪除列alter table vendors
drop column vend_phone;
drop table custcopy;
建立檢視
create view productcustomers as
select cust_name, cust_contact, prod_id
from customers, orders, orderitems
where customers.cust_id = orders.cust_id
and orderitems.order_num = orders.order_num;
所有處理封裝,簡化操作
主鍵唯一標識
create table orders
(order_num integer not null, primary key,
order_date datetime not null,
cust_id char(10) not null
);
或者建立表後再新增
alter table orders
add constraint primary key (order_num);
外來鍵create table orders
(order_num integer not null, primary key,
order_date datetime not null,
cust_id char(10) not null , references customers(cust_id)
);
或者
alter table orders
add constraint
foreign key (cust_id) references customers (cust_id);
檢查約束create table orderitems
(order_num integer not null,
order_item integer not null,
prod_id char(10) not null,
quantity integer not null check (quantity > 0),
item_price decimal(8, 2) not null
);
或者
add constraint check (gender like '[mf]');
《sql必知必會》筆記
資料庫 儲存有組織的資料的容器 通常是乙個檔案或一組檔案 注意誤用混淆 資料庫軟體被稱為dbms,資料庫是通過dbms建立和操縱的容器 模式 關於資料庫和表的布局及特性的資訊。主鍵 一列或一組列,其值能夠唯一標識表中的每一行。多條sql語句必須以 分隔。sql語句不區分大小寫,select和sele...
SQL必知必會
資料庫 儲存有組織的資料的容器。資料庫管理系統 dbms 資料庫軟體,資料庫是通過dbms建立和操縱的容器。表 某種特定資料型別的結構化清單。資料庫中的每個表都有自己的名字,且唯一。不同的資料庫可以使用相同的表名。表的特性 模式 資料在表中如何儲存,儲存什麼樣的資料,資料如何分解。模式可以用來描述資...
《SQL必知必會》 筆記(1 5)
1.1.3 資料型別 varchar和char的區別 表中的每個列都有相應的資料型別,需要注意的是在不同的資料庫中相同型別的命名也是不同的,這個需要檢視對應資料庫的文件說明 就字元型別來說,mysql有char和varchar,而oracle除了這兩種還有一種varchar2型別,同時它們對應的格式...