当前位置:首页 » 编程语言 » sql建立表范围
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql建立表范围

发布时间: 2023-01-02 15:35:26

sql语句创建表

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

具体用法为:

CREATE TABLE 表名称

(

列名称1 数据类型,

列名称2 数据类型,

列名称3 数据类型,

....

)

(1)sql建立表范围扩展阅读

创建表数据类型:

integer(size) int(size) smallint(size) tinyint(size):仅容纳整数。

decimal(size,d) numeric(size,d):容纳带有小数的数字。

char(size):容纳固定长度的字符串

varchar(size):容纳可变长度的字符串

date(yyyymmdd):容纳日期。

参考资料:网络-SQL CREATE TABLE

㈡ sql怎么创建表

1.1 创建表方法
创建表是指在已存在的数据库中建立新表。这是建立数据库最重要的一步,是进行其他操作的基础。

1.1.1 创建表的语法形式
CREATE TABLE 表名 (
属性名 数据类型 [ 完整性约束条件 ],
属性名 数据类型 [ 完整性约束条件 ],
......
属性名 数据类型 [ 完整性约束条件 ],
)[ 表类型 ] [ 表字符集 ];
SQL 是不区分大小写。下面将会具体介绍SQL,这种创建表是通过什么方式起来的效果怎么样?

命名规范:

1. 命名富有意义 ( 英文或英文组合 )

2. 自定义名称使用小写

3. MySQL 语句使用大写

CREATE TABLE IF NOT EXISTS data_house(
id INT,
name VARCHAR(20);
gender BOOLEAN,
) Engine = MyISAM;
上面 SQL 语句的含义是:如果不存在 text1 表,就创建它,包含 3 个字段 id 、 name 和 gender ,它们的类型分别是整形、字符型和布尔型,创建的表的类型是 MyISAM 。

完整性约束条件表

PRIMARY KEY 标识该属性为该表的主键,可以唯一的标识对应的元组
FOREIGN KEY 标识该属性为该表的外键,是与之联系的某表的主键
NOT NULL 标识该属性不能为空
UNIQUE 标识该属性的值是唯一的
AUTO_INCREMENT 标识该属性的值自动增加,这是 MySQL 的 SQL 语句的特色 (null,0)
DEFAULT 标识该属性设置默认值 (not null defualt 0,not null default 0.0,not null default '')
1.1.2 设置表的主键
主键是表的一个特殊字段。该字段能惟一地标识该表中的每条信息。主键和记录的关系,如同身份证和人的关系。主键用来标识每个记录,每个记录的主键值都不同。身份证是用来标明人的身份,每个人都具有惟一的身份证号。设置表的主键指在创建表时设置表的某个字段为该表的主键。

主键的主要目的是帮组 MySQL 以最快的速度查找到表中的某一条信息。

主键必须满足的条件:

1. 主键必须是唯一的,表中任意两条记录的主键字段的值不能相同;

2. 主键的值是非空值;

3. 主键可以是单一的字段,也可以是多个字段组合。

1. 单字段的主键:

CREATE TABLE student1 (
stu_id INT PRIMARY KEY ,
stu_name VARCHAR(20) NOT NULL,
stu_gender BOOLEAN
) Engine = InnoDB;
2. 多字段主键 :

CREATE TABLE student2 (
stu_id INT,
course_id INT,
grade FLOAT,
PRIMARY KEY( stu_id, course_id )
)Engine = InnoDB;
1.1.3 设置表的外键
外键是表的一个特殊字段。如果字段 sno 是一个表 A 的属性,且依赖于表 B 的主键。那么,称表 B 为父表,表 A 为子表, sno 为表 A 的外键。通过 sno 字段将父表 B 和子表 A 建立关联关系。设置表的外键指在创建表设置某个字段为外键。

设置外键的原则:必须依赖于数据库中已存在的父表的主键;外键可以为空值。

外键的作用 : 是建立该表与其父表的关联关系。父表中删除某条信息时,子表中与之对应的信息也必须有相应的改变。例如, stu_id 就 student 表的主键, stu_id 是 grade 表的外键。当 stu_id 为 '123' 同学退学了,需要从 student 表中删除该学生的信息。那么, grade 表中 stu_id 为 '123' 的所有信息也应该同时删除。

CONSTRAINT 外键别名 FOREIGN KEY ( 属性 1.1, 属性 1.2... 属性 1.n);
REFERENCES 表名 ( 属性 2.1, 属性 2.2,..., 属性 2.n)

CREATE TABLE student3 (
id INT PRIMARY KEY,
stu_id INT,
course_id INT,
# 设置外键
CONSTRAINT C_fk FOREIGN KEY (stu_id, course_id) REFERENCES student2(stu_id, course_id)
) Engine = InnoDB;
1.1.4 设置表的非空约束
非空性是指字段的值不能为空值 (NULL) 。非空约束将保证所有记录中该字段都有值。如果用户新插入的记录中,该字段为空值,则数据库系统会报错。例如,在 id 字段加上非空约束, id 字段的值就不能为空。如果插入记录的 id 字段的值为空,该记录将不能插入。设置表的非空约束是指在创建表时为表的某些特殊字段加上 NOT NULL 约束条件。设置非空约束的基本语法规则如下:

属性名 数据类型 NOT NULL

㈢ 数据库 SQL语言创建表

1.
createtableclass
(
classnochar(5)primarykey,
classnamechar(10)notnull,
amountint
)

2.
createtablestudent
(
snochar(8)primarykey,
snamechar(20)notnullunique,
agesmallint,
classnochar(5)referencesclass(classno)
)

㈣ sql语句创建表

创建新表的程序功能为:

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)

具体为:

创建之前判断该数据库是否存在

if exists (select * from sysdatabases where name='databaseName')

drop database databaseName

go

Create DATABASE databasename

on primary-- 默认就属于primary文件组,可省略

/*--数据文件的具体描述--*/

name=‘databasename_data’,-- 主数据文件的逻辑名称

filename=‘'所存位置:databasename_data.mdf’, -- 主数据文件的物理名称

size=数值mb, --主数据文件的初始大小

maxsize=数值mb, -- 主数据文件增长的最大值

filegrowth=数值%--主数据文件的增长率

log on

/*--日志文件的具体描述,各参数含义同上--*/

name='databasename_log', -- 日志文件的逻辑名称

filename='所存目录:databasename_log.ldf', -- 日志文件的物理名称

size=数值mb, --日志文件的初始大小

filegrowth=数值%--日志文件的增长值

结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;

sql 语句就是对数据库进行操作的一种语言。

(4)sql建立表范围扩展阅读

1、常见语句

更新:update table1 set field1=value1 where 范围

查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)

排序:select * from table1 order by field1,field2 [desc]

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1[separator]

2、高级查询

A:UNION运算符

UNION 运算符通过组合其他两个结果表(例如TABLE1 和TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随UNION 一起使用时(即UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自TABLE1 就是来自TABLE2。

B: EXCEPT运算符

EXCEPT 运算符通过包括所有在TABLE1 中但不在TABLE2 中的行并消除所有重复行而派生出一个结果表。当ALL 随EXCEPT 一起使用时(EXCEPT ALL),不消除重复行。

C:INTERSECT运算符

INTERSECT 运算符通过只包括TABLE1 和TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当ALL 随INTERSECT 一起使用时(INTERSECT ALL),不消除重复行。

注:使用运算词的几个查询结果行必须是一致的。

㈤ sQl表建立

--创建数据库xsbook

CREATE DATABASE xsbook

ON PRIMARY

(NAME = N'xsbook_data',

FILENAME = N'D:xsbook_data.mdf' ,

SIZE = 2MB,

MAXSIZE = 20MB,

FILEGROWTH = 10%

)

LOG ON

(NAME = N'xsbook_log',

FILENAME = N'D:xsbook_log.ldf' ,

SIZE = 1MB,

MAXSIZE = UNLIMITED,

FILEGROWTH = 1MB

)

GO


--创建表

create table xs表

(

xsID char(6) not null CONSTRAINT FK_xsid primary key,

xsName char(8) not null,

xsSex bit not null,

xsBirth datetime null,

xsAddress nchar(60) null

)


--将xsName的宽度更改为char(16)

alter table xs表

alter column xsName char(16) not null;


--对xs表增加一个新的字段xs_photo (照片) 类型为image 可以为Null

alter table xs表

add xs_photo image null;


--删除xs表的字段xs_photo

alter table xs表

drop column xs_photo;


--在xs表的xsID列上添加主键约束PK_xs

alter table xs表

drop constraint FK_xsid;

alter table xs表

add constraint PK_xs primary key(xsID);


--在xs表的xsName列上添加唯一约束UQ_xs_xsName

alter table xs表

add constraint UQ_xs_xsName unique(xsName);


--删除第(5)题的唯一约束

alter table xs表

drop constraint UQ_xs_xsName;


--向学生表中插入5条记录

insert into xs表

values('101','张一',1,'1990-09-01','江苏1');

insert into xs表

values('102','张二',0,'1990-09-02','江苏2')

insert into xs表

values('103','张三',1,'1990-09-03','江苏3')

insert into xs表

values('104','张四',0,'1990-09-04','江苏4')

insert into xs表

values('105','张五',1,'1990-09-05','江苏5');


--用select查询记录

select * from xs表;


--***********************************

--创建表

create table book表

(

bookID char(6) not null,

bookName nchar(50) not null,

Author nchar(20) not null,

Press nvarchar(30) not null ,

Price int null

)

--对book表添加主键约束,约束对应的字段为bookID.

alter table book表

add constraint FK_bookid primary key(bookID);


--修改book表的kcAuthor的宽度为nchar(30)

alter table book表

alter column Author nchar(30) not null;


--修改book表的kcPrice为not null

alter table book表

alter column Price int not null;


--在book表中添加默认值约束,默认值为"人民邮电出版社",对应的字段为Press

alter table book表

add constraint DF_press default('人民邮电出版社') for Press;


--在book表中添加Check约束,要求价格在5--100之间,对应的字段为price

alter table book表

add constraint CK_price check(Price between 5 and 100);


--向kc表中添加5条记录

insert into book表

values('001','xiyouji1','wuchengen','beijingchubanshe1',60);

insert into book表

values('002','xiyouji2','wuchengen','beijingchubanshe2',61);

insert into book表

values('003','xiyouji3','wuchengen','beijingchubanshe3',62);

insert into book表

values('004','xiyouji4','wuchengen','beijingchubanshe4',63);

insert into book表

values('005','xiyouji5','wuchengen','beijingchubanshe5',64);


--查询相关记录

select * from book表


㈥ SQL建立表问题 设定表的范围

如图,创建约束可以满足你的要求,不在这个范围内的数值写入时sql会有报错信息。

㈦ 这个mysql数据库用SQL怎么建立表

1、打开Navicat for MySQL,找到要创建数据知库中数据表

㈧ 数据库中(SQL) 建表 一张成绩表。怎么保证向表中插入的数据在0~100范围之内

在建表时建立检查性约束即可(check)
语法为:
creat table table_name
(
该列字段 数据类型 check(字段 between 0 and 100)
)

如果是在建完表建立该约束的话
语法为:
alter table table_name
add constraint 约束名 check(字段>=0 and 字段<=100)

㈨ sql语句创建表

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

具体用法为:

CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)


扩展内容

数据类型 存储大小 说明

BINARY 每个字符占一个字节 任何类型的数据都可存储在这种类型的字段中。不需数据转换(例如,转换到文本数据)。数据输入二进制字段的方式决定了它的输出方式。

BIT 1 个字节0 和 1 ,以及只包含这两个数值之一的字段。

TINYINT 1 个字节 介于 0 到 255 之间的整型数。

MONEY 8 个字节 介于 – 922,337,203,685,477.5808 到 922,337,203,685,477.5807 之间的符号整数。

DATETIME(请参阅 DOUBLE ) 8 个字节 介于 100 到 9999 年的日期或时间数值。

UNIQUEIDENTIFIER 128 个位 用于远程过程调用的唯一识别数字。

REAL 4 个字节单精度浮点数,负数范围是从 –3.402823E38 到 –1.401298E-45,正数从1.401298E-45 到 3.402823E38,和 0。

SMALLINT 2 个字节 介于 –32,768 到 32,767 的短整型数。

INTEGER 4 个字节介于 –2,147,483,648 到 2,147,483,647 的长整型数。

DECIMAL 17 个字节容纳从 1028 - 1到 - 1028 - 1. 的值的精确的数字数据类型。你可以定义精度 (1 - 28) 和 符号 (0 - 定义精度)。缺省精度和符号分别是18和0。

TEXT 每一字符两字节(参见注意) 从零到最大 2.14 千兆字节。

IMAGE 视实际需要而定 从零到最大 2.14 千兆字节。用于 OLE 对象。

CHARACTER 每一字符两字节(参见注意) 长度从 0 到 255 个字符。