sql语句创建表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句创建表相关的知识,希望对你有一定的参考价值。

设计一个会员表。
(名称uName,性别uGander,年龄uAge,职业uCareer,备注uNote,登录名uLog,密码uPwd(加密)。)要求:主键,索引。

标准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 语句就是对数据库进行操作的一种语言。

扩展资料

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语句大全

参考技术A

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 个字符。

参考资料

百度百科_SQL数据类型

sql2005官方 - SQL Server 2005文档

参考技术B

USE 数据库名 CREATE TABLE 表名 (列名 类型(大小) DEFAULT'默认值',

                                                         列名 类型(大小) DEFAULT'默认值',  

                                                         列名 类型(大小) DEFAULT'默认值',

                                                         ... ...);

比如:

create table emp(
    id int,
    ename varchar(30),
    age int,
    job varchar(20)
);

参考技术C --设计多个字段来表示多种联系方式
create table student
(
学号 char(10) primary key,
姓名 char(10) ,
联系方式一 varchar(40),
联系方式二 varchar(40),
联系方式三 varchar(40)
)
go
insert into student values('2010111111','张三','中国上海',NULL,NULL)
参考技术D 给你个例子吧
CREATE TABLE 学生信息
(
学号varchar(14) IDENTITY(1,1) PRIMARY KEY,
姓名varchar(8) UNIQUE NOT NULL,
班级编号varchar(14) REFERENCES '班级信息',
年级int null,
性别varchar(2) CHECK(性别in ('男’','女’)),
民族varchar(20) DEFAULT '未知该生民族',
籍贯varchar(50)
)
还有一些约束条件等等
如果只是创建表 就是create table语句

创建SQL查询,用SELECT语句为"成绩"表各科成绩做一个A,B,C的等级评分

用iff

就是一个case when语句,这个没什么困难的
select (case when 成绩>=90 then 'A' when 成绩>=80 and 成绩<90 then 'B' esle 'C' end) 评级 from table
具体的内容自己改,我用的是oracle的写法,其他数据库也有case when语句用法差不多,如果不是oracle数据库,那么要自己改一改才能用。
参考技术A select case
when (成绩字段>80 and 成绩字段<100) then 'C'
when (成绩字段>60 and 成绩字段<80) then 'B'
when (成绩字段>40 and 成绩字段<60) then 'A'
else 'D' end from 成绩表
参考技术B 做个case when then ;
简单
具体用法百度

以上是关于sql语句创建表的主要内容,如果未能解决你的问题,请参考以下文章

sql语句 如何创建一个表啊?

请问打开或创建表的sql语句是啥

sql语句创建表

数据库创建表的sql语句

oracle创建一个表的sql语句是怎样写的

在access利用SQL语句中如何创建表?