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

创建表sql语句测试

发布时间: 2022-08-04 06:10:24

1. 写出创建如下三张数据表的sql语句

CREATETABLETEACHER
(
TIDCHAR(10)primarykey,
TNAMEVARCHAR(20),
TDEPTVARCHAR(30),
TJNAMECHAR(6)
)
insertintoTEACHERvalues('110','黄嘉欣','管理学系','教授')
insertintoTEACHERvalues('111','刘而已','计算机系','教师')
insertintoTEACHERvalues('112','王嘉骥','外语系','副教授')

CREATETABLECOURSE1
(
CNOCHAR(20)primarykey,
CNAMEVARCHAR(40),
CHOURtinyint,
TERMtinyint
)
insertintoCOURSE1values('011','酒店管理',35,1)
insertintoCOURSE1values('012','管理学基础',75,1)
insertintoCOURSE1values('021','JAVA基础',80,2)
insertintoCOURSE1values('022','安卓开发',70,2)
insertintoCOURSE1values('031','英语作文书写',40,1)
insertintoCOURSE1values('032','日语听力练习',70,1)

insertintoCOURSE1values('033','日语写作',70,1)
insertintoCOURSE1values('023','数据结构',20,1)

createtabletcourse
(
TIDCHAR(10),
CNOCHAR(20),
thourint,
tyearint--这个题有些矛盾,如果这里设为了主键,下面插入数据就没法插入重复的,c.3.就没有意义
)
_consFOREIGNKEY(TID)REFERENCESteacher;
_consFOREIGNKEY(CNO)REFERENCEScourse1;

insertintotcoursevalues('110','011',35,2014)
insertintotcoursevalues('110','012',75,2012)
insertintotcoursevalues('111','021',80,2015)
insertintotcoursevalues('111','022',70,2013)
insertintotcoursevalues('112','031',40,2014)
insertintotcoursevalues('112','032',70,2014)
--a.
SELECTTNAME,TDEPTFROMTEACHERWHERETJNAME='教授'
--b.
SELECTCOUNT(CNO)FROMCOURSE1WHERECHOUR>40
--C.
selectCNAME,CHOUR,TNAME,thourFROMCOURSE1C1,TEACHERTR,tcourseTE
WHEREC1.CNO=TE.CNOANDTR.TID=TE.TIDANDTE.tyear=2012
--D.
DELETECOURSE1WHERECNONOTIN(SELECTCNOFROMtcourse)
--3.
CREATEVIEWQL
as
SELECTTNAME,CNAME,thourFROMCOURSE1C1,TEACHERTR,tcourseTE
WHEREC1.CNO=TE.CNOANDTR.TID=TE.TIDANDTE.tyear=2014

SELECT*FROMQL

我用的数据库是SQL2008 R2,已测试。

2. 怎么用sql语句创建表

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

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

数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:

数据类型

描述

  • integer(size)

  • int(size)

  • smallint(size)

  • tinyint(size)

  • 仅容纳整数。在括号内规定数字的最大位数。
  • decimal(size,d)

  • numeric(size,d)

  • 容纳带有小数的数字。

    "size" 规定数字的最大位数。"d" 规定小数点右侧的最大位数。

char(size)

容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。

在括号中规定字符串的长度。

varchar(size)

容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。

在括号中规定字符串的最大长度。

date(yyyymmdd) 容纳日期。

3. sql语句创建表

可执行一个SQL语句或使用SQL事务管理器(SQL Enterprise Manager)来创建一个新表。

  1. 用SQL语句创建表:

    用CREATE语句创建表,CREATE TABLE 表名称(列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,......)

  2. 用SQL事务管理器(SQL Enterprise Manager)来创建表:

  • 打开软件SQL事务管理器(SQL Enterprise Manager),点击“连接”。

  • 点击左上方的“新建查询”,则出现编写代码的窗口,在窗口中写下代码。

  • 点击左上方的红色感叹号,执行语句。

  • 执行语句。

  • 选择上方的“视图”按钮,右键点击,选择刷新,数据库和表格建立完成。

4. 如何使用Sql语句创建表

所谓临时表,即我们临时创建来用一下的表,也就是说这个表只是临时创建来用一会儿的,再我们使用完之后就会进行删除的表。我们在对数据库操作的时候,会常常用到一些临时的数据,这时候使用临时表来存放这些东西最合适不过了。
我们可以使用create语句来创建一个临时表,具体语法如:create
global
trmprary
table
temp_emp(DSN
Number,DNAME
VARCHAR(20))
On
Commit
Rows;其中On
Commit
Rows表示关机之后就删除这个临时表,或许你会觉得这样不好,当然我们还有其他的方式,比如:如果你想在关闭表的时候就删除的话,我们可以写上这条语句:On
Commit
PRESERVE
Rows。

5. SQL语句创建表

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

具体用法为:

CREATE TABLE 表名称

(

列名称1 数据类型,

列名称2 数据类型,

列名称3 数据类型,

....

)

(5)创建表sql语句测试扩展阅读

创建表数据类型:

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

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

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

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

date(yyyymmdd):容纳日期。

参考资料:网络-SQL CREATE TABLE

6. 如何使用SQL语句创建表,要完整的语句。

自己打开企业管理器,随便找个表,导出一个创建表的脚本,就什么都有了。
要语法,SQL的联机帮助里就有:
CREATE
TABLE
[
database_name
.
[
schema_name
]
.
|
schema_name
.
]
table_name
(
{
|
}
[
]
[
,...n
]
)
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
[
{
TEXTIMAGE_ON
{
filegroup
|
"default"
}
]
[
;
]
::=
column_name
[
COLLATE
collation_name
]
[
NULL
|
NOT
NULL
]
[
[
CONSTRAINT
constraint_name
]
DEFAULT
constant_expression
]
|
[
IDENTITY
[
(
seed
,increment
)
]
[
NOT
FOR
REPLICATION
]
]
[
ROWGUIDCOL
]
[
[
...n
]
]
::=
[
type_schema_name
.
]
type_name
[
(
precision
[
,
scale
]
|
max
|
[
{
CONTENT
|
DOCUMENT
}
]
xml_schema_collection
)
]
::=
[
CONSTRAINT
constraint_name
]
{
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
[
WITH
FILLFACTOR
=
fillfactor
|
WITH
(
<
index_option
>
[
,
...n
]
)
]
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
|
[
FOREIGN
KEY
]
REFERENCES
[
schema_name
.
]
referenced_table_name
[
(
ref_column
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
ON
UPDATE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
}
::=
column_name
AS
computed_column_expression
[
PERSISTED
[
NOT
NULL
]
]
[
[
CONSTRAINT
constraint_name
]
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
[
WITH
FILLFACTOR
=
fillfactor
|
WITH
(
[
,
...n
]
)
]
|
[
FOREIGN
KEY
]
REFERENCES
referenced_table_name
[
(
ref_column
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
}
]
[
ON
UPDATE
{
NO
ACTION
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
[
ON
{
partition_scheme_name
(
partition_column_name
)
|
filegroup
|
"default"
}
]
]
<
table_constraint
>
::=
[
CONSTRAINT
constraint_name
]
{
{
PRIMARY
KEY
|
UNIQUE
}
[
CLUSTERED
|
NONCLUSTERED
]
(column
[
ASC
|
DESC
]
[
,...n
]
)
[
WITH
FILLFACTOR
=
fillfactor
|WITH
(
[
,
...n
]
)
]
[
ON
{
partition_scheme_name
(partition_column_name)
|
filegroup
|
"default"
}
]
|
FOREIGN
KEY
(
column
[
,...n
]
)
REFERENCES
referenced_table_name
[
(
ref_column
[
,...n
]
)
]
[
ON
DELETE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
ON
UPDATE
{
NO
ACTION
|
CASCADE
|
SET
NULL
|
SET
DEFAULT
}
]
[
NOT
FOR
REPLICATION
]
|
CHECK
[
NOT
FOR
REPLICATION
]
(
logical_expression
)
}
::=
{
PAD_INDEX
=
{
ON
|
OFF
}
|
FILLFACTOR
=
fillfactor
|
IGNORE_DUP_KEY
=
{
ON
|
OFF
}
|
STATISTICS_NORECOMPUTE
=
{
ON
|
OFF
}
|
ALLOW_ROW_LOCKS
=
{
ON
|
OFF}
|
ALLOW_PAGE_LOCKS
={
ON
|
OFF}
}

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

(7)创建表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),不消除重复行。

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

8. 创建表之前判断表是否存在,如果存在则删除已有表的sql语句

1、创建删表函数,

create or replace procere drop_table(tbl_name varchar2)

as

v_cnt number;

begin

select count(*) into v_cnt from user_tables t where table_name = upper(tbl_name);

--如果存在则删除

if v_cnt >0 then

execute immediate 'drop table '||tbl_name||' purge';

dbms_output.put_line('删除表('||tbl_name||')成功');

else

dbms_output.put_line('表('||tbl_name||')未建');

end if;

end;

9. sql 创建数据库 创建表 脚本代码~只要代码

创建数据库的SQL语句:
create database stuDB
on primary -- 默认就属于primary文件组,可省略
(
/*--数据文件的具体描述--*/
name='stuDB_data', -- 主数据文件的逻辑名称
filename='D:\stuDB_data.mdf', -- 主数据文件的物理名称
size=5mb, --主数据文件的初始大小
maxsize=100mb, -- 主数据文件增长的最大值
filegrowth=15%--主数据文件的增长率
)
log on
(
/*--日志文件的具体描述,各参数含义同上--*/
name='stuDB_log',
filename='D:\stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)

删除这个数据库,SQL Server将数据库的清单存放在master系统数据库的sysdatabases表中,只需要查看该表是否存在于该数据库中就可以
了,语句如下:

use master -- 设置当前数据库为master,以便访问sysdatabases表
go
if exists(select * from sysdatabases where name='stuDB')
drop database stuDB
go

创建表和删除表的SQL语句如下:
use StuDB
go
if exists(select * from sysobjects where name='stuMarks')
drop table stuMarks
create table stuMarks
(
ExamNo int identity(1,1) primary key,
stuNo char(6) not null,
writtenExam int not null,
LabExam int not null
)
go
-- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列
alter table 表名
add constraint 约束名 约束类型 具体的约束说明
alter table 表名
drop constraint 约束名
alter table stuMarks
add constraint UQ_stuNo Unique(stuNo)
alter table stuMarks
drop constraint UQ_stuNo
/*--添加SQL登录账户--*/
exec sp_addlogin 'xie', '123456' -- 账户名为xie,密码为123456
--删除xie账户名
exec sp_droplogin 'xie'
/*--在stuDB数据库中添加两个用户(必须存在)--*/
use stuDB
go
exec sp_grantdbaccess 'xie','123456'
go
-- 提示:SQL Server 中的dbo用户是具有在数据库中执行所有活动权限的用户,表示数据库的所有者(owner),一般来说,
-- 如果创建了某个数据库,就是该数据库的所有者,即dbo用户,dbo用户是一个比较特殊的数据库用户,无法删除,且此用
-- 户始终出现在每个数据库中
/* --给数据库用户授权-- */
-- 授权的语法如下
-- grant 权限 [on 表名] to 数据库用户
use stuDB
go
grant select,update,insert on stuMarks to xie
grant create table to xie
go

10. 如何用SQL创建一个表格

1、打开SQL Server,在数据库处,右键数据库,点击新建数据库。