SQL基础知识普及(十九)——CREATE和ALTER

简介: SQL数据库开发

30.jpg

1CREATE DATABASE

CREATE DATABASE 语句用于创建数据库。

SQL CREATE DATABASE 语法

CREATE DATABASE dbname;

SQL CREATE DATABASE 实例

下面的 SQL 语句创建一个名为 "my_db" 的数据库:

CREATE DATABASE my_db;

数据库表可以通过 CREATE TABLE 语句来添加。

2CREATE TABLE

CREATE TABLE 语句用于创建数据库中的表。

表由行和列组成,每个表都必须有个表名。

SQL CREATE TABLE 语法

CREATE TABLE table_name

(

column_name1 data_type(size),

column_name2 data_type(size),

column_name3 data_type(size),

....

);

column_name 参数规定表中列的名称。

data_type 参数规定列的数据类型(例如 varchar、integer、decimal、date 等等)。

size 参数规定表中列的最大长度。

SQL CREATE TABLE 实例

现在我们想要创建一个名为 "Persons" 的表,包含五列:PersonID、LastName、FirstName、Address 和 City。

我们使用下面的 CREATE TABLE 语句:

实例

CREATE TABLE Persons

(

PersonID int,

LastName varchar(255),

FirstName varchar(255),

Address varchar(255),

City varchar(255)

);

PersonID列数据类型为int,包含一个整数。

LastName、FirstName、Address和City列具有包含字符的varchar数据类型,这些字段的最大长度为255个字符。  

提示:使用 INSERT INTO 语句将数据写入空表。

3ALTER TABLE

ALTER TABLE 语句用于在现有表中添加、删除或修改列。

SQL ALTER TABLE 语法

若要向表中添加列,请使用以下语法:

ALTER TABLE table_name

ADD column_name datatype

若要删除表中的列,请使用以下语法(请注意,一些数据库系统不允许这样删除数据库表中的列):

ALTER TABLE table_name

DROP COLUMN column_name

若要更改表中列的数据类型,请使用以下语法:

SQL Server / MS Access:

ALTER TABLE table_name

ALTER COLUMN column_name datatype

My SQL / Oracle:

ALTER TABLE table_name

MODIFY COLUMN column_name datatype

SQL ALTER TABLE 实例

请看 "Persons" 表:

31.jpg

现在,我们想在 "Persons" 表中添加一个名为 "出生日期" 的列。

我们使用下面的 SQL 语句:

ALTER TABLE Persons

ADD 出生日期 date;

请注意,新列 "DateOfBirth" 的类型是 date,可以存放日期。数据类型规定列中可以存放的数据的类型。

现在,"Persons" 表将如下所示:


32.jpg

改变数据类型实例

现在,我们想要改变 "Persons" 表中 "出生日期" 列的数据类型。

我们使用下面的 SQL 语句:

ALTER TABLE Persons
ALTER COLUMN 出生日期 year;

请注意,现在 "出生日期" 列的类型是 year,可以存放 2 位或 4 位格式的年份。

DROP COLUMN 实例

接下来,我们想要删除 "Person" 表中的 "DateOfBirth" 列。

我们使用下面的 SQL 语句:

ALTER TABLE Persons
DROP COLUMN 出生日期;

现在,"Persons" 表将如下所示:

33.jpg


相关文章
|
4月前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL FOREIGN KEY 约束
【7月更文挑战第24天】CREATE TABLE 时的 SQL FOREIGN KEY 约束。
54 5
|
3月前
|
SQL 数据库 Windows
【应用服务 App Service】当使用EntityFrameWorkCore访问Sql Server数据库时,在Azure App Service会出现Cannot create a DbSet for ** because this type is not included in the model for the context的错误
【应用服务 App Service】当使用EntityFrameWorkCore访问Sql Server数据库时,在Azure App Service会出现Cannot create a DbSet for ** because this type is not included in the model for the context的错误
|
4月前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL FOREIGN KEY 约束
【7月更文挑战第19天】CREATE TABLE 时的 SQL FOREIGN KEY 约束
41 8
|
4月前
|
SQL Oracle 关系型数据库
ALTER TABLE 时的 SQL PRIMARY KEY 约束
【7月更文挑战第24天】ALTER TABLE 时的 SQL PRIMARY KEY 约束。
43 3
|
4月前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL PRIMARY KEY 约束
【7月更文挑战第24天】CREATE TABLE 时的 SQL PRIMARY KEY 约束。
43 2
|
4月前
|
SQL 关系型数据库 MySQL
SQL CREATE TABLE 语句
【7月更文挑战第18天】SQL CREATE TABLE 语句。
45 6
|
4月前
|
SQL Oracle 关系型数据库
ALTER TABLE 时的 SQL PRIMARY KEY 约束
【7月更文挑战第19天】ALTER TABLE 时的 SQL PRIMARY KEY 约束。
40 3
|
4月前
|
SQL 数据库 索引
SQL CREATE INDEX 语句
【7月更文挑战第20天】SQL CREATE INDEX 语句。
33 1
|
4月前
|
SQL 关系型数据库 MySQL
ALTER TABLE 时的 SQL DEFAULT 约束
【7月更文挑战第20天】ALTER TABLE 时的 SQL DEFAULT 约束。
42 1
|
4月前
|
SQL 关系型数据库 MySQL
SQL CREATE TABLE 语句
【7月更文挑战第16天】SQL CREATE TABLE 语句。
39 2