๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ/DBMS

[SQL Server] ํ…Œ์ด๋ธ” ๋งŒ๋“ค๊ธฐ

by HanaV 2023. 4. 7.
728x90

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ (create) (MySQL๊ณผ ๋™์ผ)

create database product_db;
use product_db;

 

2. ํ…Œ์ด๋ธ” ๋งŒ๋“ค๊ธฐ (create) 

ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ• ๋•Œ๋Š”
์—ด์ด๋ฆ„๊ณผ ๋ฐ์ดํ„ฐํƒ€์ž… nullํ—ˆ์šฉ์—ฌ๋ถ€ (PK);
๋กœ ์ ์–ด์ฃผ๋ฉด ๋œ๋‹ค.
SQL Server๋Š” ์œ ๋‹ˆ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋œ nchar, nvarchar ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•œ๋‹ค.

create table product (
	product_name nvarchar(20) not null primary key,
    product_price int not null,
    product_made date not null,
    product_company nvarchar(20),
    product_num int
);

๋งŒ์•ฝ ์—ด์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด
sp_rename 'ํ…Œ์ด๋ธ”์ด๋ฆ„.์ˆ˜์ •์ „์—ด์ด๋ฆ„', 'ํ…Œ์ด๋ธ”์ด๋ฆ„.์ˆ˜์ •ํ›„์—ด์ด๋ฆ„', 'column';
์—ด์˜ ๋ฐ์ดํ„ฐํƒ€์ž…์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด
alter table ํ…Œ์ด๋ธ”๋ช… alter column ์—ด์ด๋ฆ„ ์ƒˆ๋กœ์šด๋ฐ์ดํ„ฐํƒ€์ž…;
๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค.

sp_rename 'product.product_num', 'product_number', 'column';
alter table product alter column product_num tinyint;

 

3. ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ ์ž…๋ ฅ/์ˆ˜์ •/์‚ญ์ œํ•˜๊ธฐ (insert into / delete from / update)

MySQL๊ณผ ๋ช…๋ น๋ฌธ์€ ๊ฐ™์ง€๋งŒ nvar, nchar ํƒ€์ž…์—๋Š” ์•ž์— N์„ ์ ์–ด์ค˜์•ผํ•œ๋‹ค.
๋ฐ์ดํ„ฐ ์ž…๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
insert into ํ…Œ์ด๋ธ”์ด๋ฆ„ values (๋ฐ์ดํ„ฐ);

insert into product values(N'๋ฐ”๋‚˜๋‚˜', 1500, '2023-04-07', N'๋ธ๋ชฌํŠธ', 17);
insert into product values(N'์ฐธ์น˜๋งˆ์š” ์‚ผ๊ฐ๊น€๋ฐฅ', 900, '2023-04-06', '', 3);
insert into product values(N'์ง„๋ผ๋ฉด ๋งค์šด๋ง›', 600, '2023-03-20', N'์˜ค๋šœ๊ธฐ', 37);
insert into product values(N'ํฌ์ผ“๋ชฌ์Šคํ„ฐ ์Šคํ‹ฐ์ปค', 500, '20230402', '', 1);

์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด 
delete from ํ…Œ์ด๋ธ”์ด๋ฆ„ where PK๊ฐ’; 
์„ ์‚ฌ์šฉํ•ด์ฃผ๋ฉด ๋˜๋Š”๋ฐ, PK๊ฐ’์„ ์‚ฌ์šฉํ•ด์•ผ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋”ฑ ํ•˜๋‚˜๋งŒ ์‚ญ์ œ๋œ๋‹ค.

delete from product where product_name='ํฌ์ผ“๋ชฌ์Šคํ„ฐ ์Šคํ‹ฐ์ปค';

์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด
update ํ…Œ์ด๋ธ”์ด๋ฆ„ set ์ˆ˜์ •ํ•˜๊ณ ์‹ถ์€์—ด์ด๋ฆ„='์ˆ˜์ •ํ›„๋ฐ์ดํ„ฐ' where ์ˆ˜์ •ํ•˜๊ณ ์‹ถ์€์—ด์ด๋ฆ„='์ˆ˜์ •์ „๋ฐ์ดํ„ฐ';

update product set product_number=35 where product_number='37';

 

 

create database product_db;
use product_db;

create table product (
	product_name nvarchar(20) not null primary key,
    product_price int not null,
    product_made date not null,
    product_company nvarchar(20),
    product_num int
);

alter table product alter column product_num tinyint not null;
sp_rename 'product.product_num', 'product_number', 'column';

drop table product;

insert into product values(N'๋ฐ”๋‚˜๋‚˜', 1500, '2023-04-07', N'๋ธ๋ชฌํŠธ', 17);
insert into product values(N'์ฐธ์น˜๋งˆ์š” ์‚ผ๊ฐ๊น€๋ฐฅ', 900, '2023-04-06', '', 3);
insert into product values(N'์ง„๋ผ๋ฉด ๋งค์šด๋ง›', 600, '2023-03-20', N'์˜ค๋šœ๊ธฐ', 37);
insert into product values(N'ํฌ์ผ“๋ชฌ์Šคํ„ฐ ์Šคํ‹ฐ์ปค', 500, '20230402', '', 1);

select len('์ฐธ์น˜๋งˆ์š” ์‚ผ๊ฐ๊น€๋ฐฅ');

select * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='product';

select * from product;

728x90

"); wcs_do();